Zaczynamy zabawę z Debianem #4: Wreszcie profit z Linuxa! Odzyskiwanie danych z EXT3 i EXT4

Dowiedziałeś się do tej pory jak wykonywać podstawowe operacje w Linuxie. Temat jeszcze będę rozbudowywał, ale jako, że następny zjazd tuż tuż – opiszę już teraz jak odzyskiwać dane z partycji EXT3.

Za pewne pamiętacie odzyskiwanie danych z partycji ext2 – w przypadku ext3 i pakietu extundelete jest znacznie szybciej i łatwiej 🙂
Najpierw standardowo przechodzimy do konta z uprawnieniami administracyjnymi wpisując su, następnie tworzymy „wirtualną” partycję EXT (5 poleceń przepisałem z PDFa, bo praktycznie zawsze robi się to tak samo – jedynie nazwy plików/folderów możecie sobie podmienić):

# touch /plik_loop
# mkdir /mnt/partycja_loop
# dd if=/dev/zero of=/plik_loop bs=1M count=80
# losetup /dev/loop0 /plik_loop
# mkfs.ext3 /dev/loop0
# mount -t ext3 -o loop /dev/loop0 /mnt/partycja_loop
Następnie przechodzimy do partycji:
# cd /mnt/partycja_loop
Tworzymy plik tekstowy i sprawdzamy czy utworzył się poprawnie:
# echo „Wspanialy tekst” >> plik.txt
# cat plik.txt
Powinniście teraz zobaczyć na ekranie „Wspanialy tekst”.
EXT3-1
Tak to powinno wyglądać po wykonaniu wyżej opisanych operacji

Podsumowując to co zrobiliśmy do tej pory – utworzyliśmy wirtualną partycję którą „zamontowaliśmy” (na chłopski rozum – „podłączyliśmy”) do folderu /mnt/partycja_loop. Później utworzyliśmy plik. Teraz czas na właściwą zabawę czyli usunięcie pliku i jego odzyskiwanie. Należy pamiętać aby w międzyczasie nie robić w systemie nic poza odzyskiwaniem i robić to dość szybko, ponieważ dowolny program może nadpisać nasz plik i odzyskanie stanie się niemożliwe.

Tak więc zaczynamy. Najpierw usuniemy plik:

# rm plik.txt

Plik został usunięty, więc teraz szybko odmontowujemy partycję aby nic nam nie nadpisało miejsca które zwolniliśmy po usunięciu pliku:

# umount /mnt/partycja_loop

Jeśli otrzymamy komunikat „device is busy” oznacza to, że system widzi urządzenie jako „zajęte”/”właśnie używane” – jesteśmy w katalogu na nim, więc system nie może nam odciąć od niego dostępu. W takim wypadku wpisujemy:

# cd
# umount /mnt/partycja_loop

I wuala – partycja odmontowana, teraz czas na odzyskiwanie.

Jedyne co musimy zrobić to zainstalować program extundelete i resztę zrobi on za nas:

# apt-get install extundelete

Teraz tylko podajemy jaki plik chcemy odzyskać i gdzie on się znajdował (a właściwie znajduje):

# extundelete –restore-file plik.txt /dev/loop0
Jak widzisz dodaję parametr „–restore-file” co informuje program o tym co chcemy zrobić, później podaję nazwę pliku (powinna być tu ścieżka, ale plik który utworzyliśmy znajduje się w głównym katalogu na naszym dysku) i na końcu podaję urządzenie z którego chcę odzyskać dane.

Wpisujemy ls aby sprawdzić czy nasz plik się odzyskał i widzimy:

root@debian8:~# ls
RECOVERED_FILES

Utworzył się katalog – jest nadzieja! Przechodzimy do niego wpisując cd RECOVERED_FILES i jeszcze raz wpisujemy ls. Jeśli wszystko się powiodło powinniśmy zobaczyć nasz „plik.txt” i nie pozostaje nam nic innego jak sprawdzić czy to nie halucynacje wpisując cat plik.txt co spowoduje wyświetlenie zawartości pliku. Jeśli widzisz coś takiego:

ext3-2

to znaczy, że po raz kolejny możesz sobie pogratulować, pójść na piwo, a jak wrócisz to być może pod swoimi drzwiami zastaniesz kolejkę Twoich przyszłych klientów czekających na odzyskanie danych 😀

Być może zdziwi Cię to, że ten artykuł jest tak krótki skoro miałeś się z niego dowiedzieć także o odzyskiwaniu danych z partycji ext4. Po raz kolejny – nie oszukałem Cię. Sytuacja w przypadku ext4 jest analogiczna. Po prostu wszędzie gdzie w tym poradniku widzisz tekst „ext3” wystarczy go podmienić na ext4 – dane odzyskuje się identycznie! 🙂

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *