AllInfo
Main: Info Blog Temp Mail


unix 2012-11-19 07-02-55

Востановление потеряных данных и разделов с помощью Ubuntu liveCD




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

В этой статье мы рассмотрим простые способы восстановить случайно удаленные файлы, которые можно выполнить используя Ubuntu Live CD, но для жестких дисков, которые были сильно повреждены, эти методы не будет эффективены. Также мы рассмотрим четыре инструмента, которые могут восстановить данные из наиболее битых жестких дисков, независимо от того были ли они отформатированы под управлением ОС Windows, Linux, Mac или даже если таблица разделов уничтожена полностью …

Для начала.

Для демонстрации возможностей этих утилит установим жесткий диск размером 1ГБ, который был разбит на два раздела. Первый раздел был отформатирован под файловую систему ext2 и использовался для Linux, другой раздел – FAT32, который использовался старой версией Windows. Восстановим по 10 случайных картинок с каждого раздела.



Уничтожим таблицу разделов на жестком диске, удалив разделы в GParted.



Установка утилит.

Все утилиты, которые мы будем использовать, из Ubuntu репозитория Universe.

Чтобы подключить этот рипозиторий необходимо зайти в Администрирование -> Источники приложений, где в настройках поставить галочку напротив “Community-maintained Open Source software (universe)”.



Нажмите Закрыть, в результате чего система попросит вас обновить список пакетов. После обновления списка зайдите в Менеджер управления пакетами Synaptic (Администрирование -> Менеджер пакетов Synaptic) и отметьте для установки следующие пакеты: testdisk, foremost и scalpel.

Testdisk включает в себя TestDisk, который может восстанавливать потерянные разделы и boot-сектора, и PhotoRec, который может восстановить большое количество типов файлов, с разделов с различными файловыми системами.



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



Наконец, scalpel выполняет те же функции, что и foremost, но он ориентирован на повышение производительности при меньшей затрате оперативной памяти. Scalpel может работать лучше, если у вас старая машина с меньшим количеством оперативной памяти.



Восстановление разделов на жестком диске.

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

Testdisk – начнем процесс восстановления с нее. Для запуска утилиты откроем терминал (Приложения -> Стандартные -> Терминал) и набираем в нем команду:

sudo testdisk



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



Далее testdisk попросит вас уточнить тип таблицы раздела, который он будет пытаться восстановить. В большинстве случаев вам придется выбирать тип Intel, поскольку он соответствует файловым системам Ext2/3/4, NTFS, FAT32. После чего жмем Enter.



Выберите Analyse и жмем Enter.



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



Также он нашел те два раздела, которые мы только что удалили с помощью GParted (что описано в пункте Для начала). Мы в состоянии изменить их атрибуты, или добавить несколько разделов, но мы просто восстановим их, нажав Enter.



Если testdisk не нашел все разделы, вы можете попробовать выполнить глубокий поиск, выбрав соответствующую опцию клавишами с левой или правой стрелками. У нас были только эти два раздела, поэтому мы будем восстанавливать их, выбрав Write и нажимаем Enter.



Testdisk информирует нас что необходима перезагрузка.



Примечание: Если вы использовали Ubuntu Live CD с компакт диска, то после перезагрузки вам придется переустановить все инструменты, которые вы установили ранее, так как они были установлены в оперативную память, и, соответственно, во время перезагрузки были удалены. Выходом в данной ситуации было бы создание загрузочной флэшки с использованием образа Ubuntu Live CD. Преимуществом этого способа было бы то, что установленные пакеты были бы сохранены в выделенную область флэшки.

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



Восстановление файлов определенных типов.

Для следующего примера мы удалили 10 картинок из каждого раздела и переформатировали их.

PhotoRec

Из трех инструментов, которые мы покажем, PhotoRec имеет наиболее дружелюбный интерфейс для пользователя, несмотря на то, что это консольная утилита.

Для запуска восстановления запустите Терминал и наберите в нем команду:

sudo photorec

Для начала, утилита попросит вас определить устройство с которого необходимо восстановить информацию. После того, как вы выбрали необходимое устройство жмем Enter.



Также, как testdisk, PhotoRec попросит вас уточнить тип таблицы раздела, который он будет пытаться восстановить. В большинстве случаев вам придется выбирать тип Intel, поскольку он соответствует файловым системам Ext2/3/4, NTFS, FAT32. После чего жмем Enter.



Мы получили весь список разделов на выбранном жестком диске. Если вы хотите восстановить все файлы на этих разделах, то выберите Search и нажмите Enter.

Однако этот процесс может быть очень медленным. В нашем случае мы хотим найти и восстановить только файлы изображений, так что вместо этого мы нажимаем на клавишу с правой стрелкой для выбора File Opt и нажимаем Enter.



PhotoRec может восстановить много различных типов файлов, что может занять значительное время. Вместо этого, нажимаем “S”, чтобы очистить все выбранные типы файлов, а затем находим необходимые нам типы файлов – JPG, GIF, PNG и – и выбраем их, нажав клавишу со стрелкой вправо.



После того как мы выбрали нужные нам типы файлов, жмем “B”, чтобы сохранить эти настройки.



Нажмите клавишу Enter, чтобы вернуться в список разделов жесткого диска. Мы хотим выполнить поиск на обоих разделах, поэтому мы выбираем строчку “No partition” и “Search” и нажмите клавишу Enter.



PhotoRec запрашивает место расположение для хранения восстановленных файлов. Если у вас есть рабочий жесткий диск, то мы рекомендуем указать его для хранения восстановленных файлов. Так как мы восстанавливаем не очень большой объем данных, то укажем место для восстановления – рабочий стол Ubuntu Live CD.

Примечание: Не восстанавливайте файлы на жесткий диск с которого вы их восстанавливаете.



PhotoRec в состоянии восстановить 20 фотографий из разделов на нашем жестком диске!



Посмотрим на содержимое папки recup_dir.1, появление которой подтверждает, что PhotoRec восстановил все наши картинки, и сохранил их с ихними именами.



Foremost

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

Для того чтобы просмотреть весь список опций, которые имеет foremost, запустите Терминал и введите в нем следующую команду:

foremost –h

В нашем случаи мы будем использовать следующие командные опции:

-t определяет список типов файлов для поиска, в нашем случаи это “jpeg,png,gif”.
-v включает подробный режим, для того чтобы было понятно что foremost в данном случаи делает.
-o определяет папку, в которую необходимо сохранить восстановленные файлы, в нашем случаи это папка “foremost” на рабочем столе.
-i определяет устройство, на котором будет выполняться сканирование. Это может быть как реальный диск, так и его образ в различных форматах. В нашем случаи мы будем использовать жесткий диск /dev/sda.
Теперь наша команда будет иметь следующий вид:

sudo foremost –t jpeg,png,gif –o foremost –v –i /dev/sda

В вашем случаи эта команда будет иметь другой вид, в зависимости от того что вы ищите и где.



Foremost в состоянии восстановить 17 из 20 файлов, находящихся на жестком диске.



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



Это может быть частично из-за того, что восстанавливали с раздела на котором была файловая система ext2. Foremost рекомендует использовать опцию -d при восстановлении с Linux разделов с файловой системой ext2.

Теперь еще раз запустим foremost, но с добавлением опции -d в командной строке:

sudo foremost –t jpeg,png,gif –d –o foremost –v –i /dev/sda



В этом случаи foremost восстановил все 20 файлов.



Если теперь посмотреть на восстановленные изображения, то увидим что они все восстановлены без проблем.



Scalpel

Scalpel – другая мощная программа, которая, как и Foremost, имеет сложную настройку. В отличие от Foremost, Scalpel требует редактирования файла конфигурации, прежде чем приступить к восстановлению данных.

Для этого подойдет любой текстовый редактор, но бы будем использовать gedit для правки файла конфигурации. В терминале наберите следующую команду:

sudo gedit /etc/scalpel/scalpel.conf



scalpel.conf содержит информацию о ряде различных типов файлов. Просмотрите этот файл и раскомментируйте строки, которые начинаются с типа файла, который вы хотите восстановить (т.е. удалить символ “#” в начале этих строк).



Сохраните файл и закройте его. Вернитесь в окно терминала.

Scalpel также имеет массу параметров в командной строке, которые могут помочь выполнить поиск быстро и эффективно, однако, мы просто определим устройство для поиска (/dev/sda) и папку для сохранения результатов (папка с названием “scalpel”, которую мы создали на рабочем столе).

Наша команда выглядит так:

sudo scalpel /dev/sda –o scalpel



Scalpel восстановил 18 из 20 файлов.



Если просмотреть восстановленные фалы, то можно сказать, что они были относительно нормально восстановлены, так как видны некоторые проблемы (на рисунке 00000012.jpg).



Заключение.

В нашем небольшом эксперименте нам удалось с помощью TestDisk восстановить два раздела на диске, с помощью PhotoRec мы восстановили все удаленные 20 картинок. Говоря о Scalpel, то можно сказать, что более тонкая настройка его с командной строки могла бы позволить нам восстановить все 20 картинок.

Эти инструменты являются спасателями, когда что-то пойдет не так с вашим жестким диском. Если ваши данные на жестком диске “потерялись”, то один из этих инструментов вам поможет их найти!

18.223.108.134 / 2024-12-22_20-14-15 UTC.