Foremost — программа для восстановление утраченных данных в домашних условиях

В данной статье пойдет речь о Foremost - удобном и достаточно простом в использовании инструменте для восстановления файлов.

Вместо вступления в сегодняшней статье будет предупреждение. Следующий абзац слишком важен, чтобы помещать его где-либо, кроме начала. Пожалуйста, прочтите его очень внимательно и сделайте правильный выбор.

Восстановление данных в домашних условиях чревато их окончательной потерей.

Если удаленная или другим способом утраченная информация очень важна, ни в коем случае не пытайтесь спасти ее самостоятельно. Немедленно обесточьте компьютер и отнесите его в сервисный центр, заслуживающий доверия. Стандартный способ выключения лучше не использовать: при выключении операционная система может выполнять запись на диск и попасть именно на те блоки устройства, где хранятся части ваших файлов.

Общие принципы и правила.

Возможно, вы уже знаете, что удаленные данные не исчезают сразу же после того, как вы очистили корзину или выполнили быстрое форматирование. Они лишь отмечаются как удаленные, а занимаемое ими место считается свободным. Физически они будут уничтожены только тогда, когда потребуется что-либо записать на это место. Кроме того, что такой подход позволяет вернуть утраченные файлы, он полезен еще и тем, что продлевает срок жизни диска и ускоряет удаление.

Из этого вытекает простое правило: по возможности ничего не записывать на устройство, с которого планируется что-либо извлекать. Загружать с него ОС тоже не стоит. Самый оптимальный вариант — сделать образ диска и работать с ним. Существует большое количество программ, позволяющих сделать полную копию содержимого диска. Одна из самых простых и доступных — dd. В крайнем случае хотя бы записывайте восстановленные данные на другой раздел.

Foremost.

Небольшая утилита, присутствующая в репозитории Ubuntu. Согласно инструкции, foremost разрабатывали государственные службы США, имитируя функциональность работающей в среде DOS программы CarvThis. Как бы там ни было, foremost — удобный и достаточно простой в использовании инструмент для восстановления файлов.

Для определения типа файла используется не только расширение, но и несколько первых байт и другие признаки.

Для начала — простая установка:

Соглашаемся установить пакет, нажав Y, немного ждем — и приступаем к восстановлению.

Для примера давайте попробуем найти все архивы .zip.

Я выбрал этот формат не случайно. Дело в том, что файлы большинства современных офисных пакетов, как проприетарных, так и свободных, представляют собой именно zip-архивы. Исключение составляют только документы Microsoft Office 2003 и более ранних версий (doc, ppt, xls и т. д.). Поскольку мы восстанавливаем небольшие файлы, для них вполне достаточно будет папки, которую мы создадим в домашней директории текущего пользователя.

Рассмотрим параметры, с которыми мы запустили foremost.

-v означает verbose, то есть режим работы, при котором в консоль будут выводиться сообщения о происходящем. Не обязательный, но очень полезный параметр.

-t означает, что далее последуют типы файлов, которые мы хотим искать. Поддерживаются часто используемые .jpg, .png, gif, avi, exe и т. д. Забегая вперед, скажу, что вы самостоятельно можете добавить любой интересующий вас тип файлов. Чтобы искать все известные программе типы файлов, используйте значение «all» (т. е. -t all), либо не указывайте тип вовсе — результат будет тот же.

-i (input) говорит о том, что дальше мы укажем путь к входным данным, или проще говоря, месту, где нужно искать. Это может быть блочное устройство (как в примере выше), образ диска или путь к папке.

-o (output) предупреждает, что далее мы укажем место, куда хотим записывать полученные данные. Можно не указывать. В этом случае там, откуда вы вызвали программу, будет создана директория output.

Дождавшись окончания сканирования, заглянем в указанную нами директорию.

Поскольку foremost мы запускали от имени суперпользователя, файлы на выходе принадлежат ему. Давайте передадим их себе:

Если поиск предстоит выполнять на устройстве c одной из файловых систем Linux, добавьте ключ -d. Больше опций и другой полезной информации вы найдете в документации foremost. Там же есть список форматов, которые программа распознает без дополнительной настройки.

Нужно больше типов файлов?

Если нужный вам тип файлов программа не распознает, загляните в:

/etc/foremost.conf

Во-первых, сюда можно добавить характеристики нужного вам формата, чтобы использовать эти данные при поиске. Во-вторых, многие из них уже добавлены разработчиками. Если вы нашли здесь то, что вам нужно, раскомментируйте строку.