И все-таки я его восстановил…

Автор: content Суббота, Апрель 12th, 2008 Нет комментариев

Рубрика: Интернет

Быстростертый CDRW с данными — еще не трагедия

Итак, это не гон. Стертый в режиме Quick Erase перезаписываемый диск поддается восстановлению достаточно успешно. Две недели экспериментов дали очень неплохой результат, и теперь я знаю, как это делается :) Ну-с, приступим. Прежде всего, нам понадобятся (в порядке применения) вот эти программы :

  • Nero Burning Rom
  • DiscDump, или подобный ему имиджмейкер
  • WinHex
  • Easy Recovery Pro v6.0
  • WinRar
  • Advanced ZIP Repair
  • Office Recovery
  • Multi Pipper
Одна из особенностей операционной системы Windows (для удобства можно условиться считать это правилом) такова — стертый диск считается пустым. И какими бы универсально-восстановительными ни были программы, выше головы они прыгнуть не в состоянии — драйвер, используемый операционкой, они обойти не могут. Следовательно, перед началом непосредственно восстановления, нам необходимо сделать диск «видимым» для используемых программ. А значит правило следует как-то обойти… или обмануть. Кстати, большое спасибо qza за совет :) . Мы знаем, что на стертом диске практически все данные в целости и сохранности, уничтожена лишь TOC — таблица оглавления. А это значит, что восстановив ее, не стирая остальное содержимое диска, мы доберемся до области данных. Проще всего это сделать, записав на диск фейковое оглавление.

Берем наш быстростертый диск, закладываем в трей и запускаем Nero. Я уверен, что практически у каждого имеется на жестком диске хотя бы один фильм в формате Mpeg4… :) Подготавливаем проект записи нового диска, в качестве «содержимого» проекта указываем тот самый фильм, размером 600-700 мегабайт. Настройки Nero обычные, основные условия — режимы No Multisession и DAO. Первое, думаю, понятно почему, а о втором чуть позже. Далее просто жмем кнопку Write, и почти сразу же — Cancel. Происходит именно то, что нам нужно — запись не прерывается тут же, но записывается только Lead In — начальная метка диска, упрощенно говоря, и TOC — оглавление. Далее запись остановится.

Преимущество режима DAO в том, что перед записью данных сначала пишется Lead In, а в режиме TAO практически сразу начинается запись трека, а Lead In и Lead Out записываются в конце. Таким образом, а TAO существует опасность затереть данные.

Ну вот, самого главного мы достигли — теперь диск у нас виден. Осталось полдела — самое интересное, нудное и кропотливое — вытащить из диска нужные файлы и поменять их на денежку клиента :) Для этого (я имею в виду вытаскивание файлов, а не денежку клиента) воспользуемся утилиткой — снимем образ диска в файл. Можно, конечно, работать напрямую с диском, но с имиджем это получится быстрее как минимум на порядок. Утилита должна уметь корректно обрабатывать ошибки чтения диска, поскольку TOC не соответствует содержимому. Я использовал DiskDump, ее можно взять у меня на страничке, вот здесь.

Имидж готов, можно приступать к извлечению файлов. Для этого лучше всего, на мой взгляд, подходит программа WinHex, ее легко найти на одноименном сайте www.winhex.com. Одной из замечательных функций этой программы является поиск файлов по сигнатуре, и последующее сохранение найденных файлов с указанным размером. Открываем в WinHex созданный образ, заходим в Tools -> Disk Tools -> File Recovery by Type и выбираем нужный нам тип файла, который собираемся восстанавливать. Устанавливаем размеры файла, затем размеры сектора и кластера (должно быть 2048 и 16, но…) и жмем Ок.

…И вот тут я столкнулся с некоей странностью. В зависимости от размера кластера, файлов обнаруживалось разное количество… Впрочем, это объяснимо, но непонятно другое — используя опцию File Recovery by Type сигнатур обнаруживалось гораздо меньше, чем следовало ожидать, при любых значениях размеров сектора/кластера. Если же применить Search -> Find Hex Values, загнав в строку поиска ту же самую сигнатуру, последних обнаружится именно столько, сколько файлов с этой сигнатурой имеется на диске, то бишь в его образе, который мы ковыряем.

Ну а далее начинается само веселье — поиск всех сигнатур (читай: заголовков) файлов в Find Hex Values, сохранение их в Position Manager и затем выдергивание их вручную поблочно. Зная начальный адрес места, где расположен файл, идем туда и отмечаем блок мегабайт пять, или больше, в общем — с запасом. Сохраняем этот блок, идем к следующему. И так далее… Долго? Нудно? А никто и не обещал, что все будет автоматически :) Да и наловчиться можно довольно быстро. Впрочем, если кто-то разберется с непонятностью в WinHex относительно поиска файлов by Type и сообщит мне — буду весьма признателен.

Представим себе, что все заготовки файлов у нас выдернуты и аккуратно сложены в некий каталог Recovery. Далее вступают дело две последние программы из вышеприведенного списка. Easy Recovery Pro 6.0 способен извлечь из заготовок большинство известных файлов. RAR-архивами займется непосредственно сам архиватор WinRAR. Вот, собственно, и вся технология извлечения файлов с быстростертого CDRW.

Небольшое дополнение.
Тот, кто читал эту статью раньше, наверняка обратил внимание на то, что список «инструментария» удлинился на три замечательных программы. Утилита Advanced ZIP Reapair поможет восстановить ZIP-архивы. Это прямая ссылка на программу, а это — сайт разработчиков.
Комплексный пакет программ для восстановления десяти наиболее распространенных типов документов OfficeRecovery вы можете взять на этом сайте.
Программа Multi Ripper автоматически просканирует созданный ISO-шник в поисках файлов с известными ей сигнатурами и выдернет все найденые файлы в заранее определенный каталог. Добавлю, что знает она этих сигнатур немало — 110 (сто десять) штук…

Оставить комментарий

Чтобы оставлять комментарии Вы должны быть авторизованы.

Похожие посты