10.1. Восстановление удаленного файла

We use cookies. Read the Privacy and Cookie Policy

10.1. Восстановление удаленного файла

Из второй главы вы узнали, что файл на файловой системе ext2 (и ext3) представляет собой индексный дескриптор (inode), указывающий на блоки, в которых и размещаются данные. Содержимое блоков удаленного файла не исчезает сразу: эти блоки помечаются как свободные и отводятся для размещения других файлов по мере необходимости в свободном месте. Если файловая система используется не слишком интенсивно, блоки будут перезаписаны нескоро, и данные еще можно восстановить.

Первым делом размонтируйте раздел, содержавший удаленный файл. Это нужно для того, чтобы предотвратить перезапись его блоков во время попыток восстановления.

Если размонтировать файловую систему не удается (вы получили сообщение «device is busy»), то проверьте, какие процессы к ней обращаются, и прервите их. Это можно сделать с помощью команды

fuser -m <файловая_система>

Если удаленный файл находился на корневой файловой системе, то ее размонтировать нельзя. Вам придется выключить компьютер, извлечь жесткий диск и заняться восстановлением файла на другой Linux-машине. Отсюда мораль: при установке Linux разбивайте жесткий диск так, чтобы файловые системы /usr, /var и особенно /home (те, в которых данные меняются чаще всего) размешались на отдельных разделах.

Linux — тщательно документированная система, и пути решения распространенных проблем описываются в документах HOWTO. Восстановлению файлов посвящено руководство www.tldp.org/HOWTO/Ext2fs-Undeletion.html (его русский перевод можно найти, например, на http://linux.vitebsk.by/howto/Ext2fs-Undeletion.html).

Для восстановления файлов на файловой системе ext2 (не ext3!) разработана утилита e2undel (http://e2undel.sourceforge.net). С ней вы разберетесь сами, а сейчас я скажу пару слов о средствах, входящих в состав обыкновенного дистрибутива.

Данный текст является ознакомительным фрагментом.