Восстановление данных с помощью TestDisk

TestDisk — один из самых популярных инструментов для восстановления утраченных данных в Linux. Кроме простого извлечения удаленных файлов он умеет восстанавливать поврежденную таблицу разделов и перезаписывать загрузочный сектор. Сегодня я расскажу, как сделать и то, и другое.

Извлекаем удаленные файлы.

Для начала установим необходимые пакеты:

Запускаем:

и видим примерно следующее:

Здесь нам сообщают, что за программу мы запустили и предлагают начать записывать новый лог. Соглашаемся, выбрав Create (можете отказаться, если хотите). Далее будет список доступных носителей. Выбираем нужный. После этого потребуется указать тип таблицы разделов. В большинстве случаев подойдет либо Intel, либо EFI GPT. Если не уверены на 100%, просто выберите тот вариант, который рекомендует программа (надпись внизу экрана):

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

Далее выбираем вариант Advanced. На этом экране можно создать образ раздела с помощью пункта Image Creation и работать уже с ним. Советую так и поступить, если данные очень важны. Чтобы перейти непосредственно к поиску и восстановлению файлов, выбирайте пункт List. После этого вы увидите содержимое корневой директории раздела.

Если понадобится вернуться на предыдущий экран, нажмите клавишу q.

Дальше перемещайтесь с помощью стрелок вверх и вниз, а для перехода в каталог нажмите Enter. Если потребуется вернуться назад, выбирайте вариант «..», расположенный вверху списка. Кроме того, переход в выбранную папку осуществляется по нажатию правой стрелки, а в родительскую — по нажатию левой.

Две точки традиционно обозначают родительский каталог, одна — текущий. Файлы, название которых начинается с точки, в Linux считаются скрытыми и по умолчанию не показываются. Красным шрифтом TestDisk обозначает удаленные файлы. Таким образом, если вы по ошибке удалили важный документ, ищите его в красных строках.

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

Если нужно спасти сразу большое количество документов, это можно сделать за один раз. Для множественного выбора нажимайте «:» (с раскладкой клавиатуры Английская США это работает по нажатию Shift + :). Нажатие a в английской раскладке позволяет выбрать сразу все содержимое папки. Выбранные файлы окрашиваются зеленым цветом. После этого можете сохранять все, что выбрали, с помощью нажатия Shift + C.

Восстанавливаем таблицу разделов с помощью TestDisk.

Восстановление удаленных файлов — очень полезная функция, с которой TestDisk неплохо справляется. Но основное предназначение этой программы — восстановление удаленной или поврежденной таблицы разделов. Именно этим мы сейчас и займемся. Для примера я возьму HDD с Windows, на котором была удалена область MBR (соответственно, удалилась и таблица разделов).

ОС не загружается, Gparted видит HDD как сплошное неразмеченное пространство:

Снова запускаем TestDisk, выбираем нужное устройство, тип таблицы разделов, далее вариант Analyse — и видим, что у нас нет не только загрузочных, но и вообще любых разделов:

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

Жмём Enter, чтобы продолжить. Теперь можно создать новую таблицу разделов, выбрав Write. Но что делать, если вы не нашли то, что искали? В таком случае выбирайте вариант Deeper Search и запасайтесь терпением. Как только найдется нужный раздел, поиск можно остановить и перейти к восстановлению.

Если нашлось больше разделов, чем их было на самом деле, не удивляйтесь: это следы предыдущих разметок диска. Чтобы выбрать правильные разделы для восстановления, обратите внимание на их размер, который выводится внизу экрана. Для дополнительной уверенности можно вывести список файлов по нажатию P. Кстати, отсюда же их можно и восстановить, нажав с, как мы уже делали в первой части статьи. TestDisk сам определит, какие разделы нужно восстановить, прочие будут иметь пометку D (Deleted) в начале строки. Если вы не измените это значение вручную, восстановлены они не будут.

Смотрим, что получилось:

Разделы на месте, ОС загружается без лишних вопросов.