Восстановление данных на 100 процентов - Петр Ташков
Шрифт:
Интервал:
Закладка:
Рис. 5.9. Aleratec DVD/CD Disc Repair CG
В случае, когда на диске видны механические повреждения, прежде всего стоит попытаться прочитать такой диск на уже испытанных приводах, скорость которых снижена до минимума. Чем больше приводов будет использовано, тем выше вероятность, что какой-то из них удовлетворительно справится с задачей. В отличие от других носителей, дальнейшего повреждения диска во время чтения здесь опасаться не стоит. Постарайтесь сначала сохранить тот образ, который удастся восстановить с диска в его исходном состоянии. Этот образ лучше оставить до конца работ по восстановлению информации. Хотя шансы окончательно испортить диск при устранении царапин очень малы, лучше все же перестраховаться. Затем можно спокойно устранить или заполировать дефекты поверхности. Возможно, после этих процедур диск сразу удастся прочитать штатными средствами операционной системы! Если же исправление механических дефектов не дало существенных результатов, начните восстанавливать информацию программными средствами из лучшего, наиболее полного образа.
Чтение диска с разрушенной служебной областью
Как уже отмечалось, при повреждении центральной области диска, где находится нулевая дорожка, этот диск просто не распознается приводом. Обнаружив, что в процессе чтения оглавления диска возникли критические ошибки, микропрограмма привода отказывает такому диску в обработке, несмотря на то что содержимое TOC дублировано по всей спиральной дорожке. В результате после вставки диска дисковод продолжает считать, что диска в нем нет, индикатор готовности на передней панели, помигав, гаснет и какие-либо дальнейшие действия невозможны.
Примечание
Привод выдает в интерфейс служебные сообщения о своем состоянии. Эти сообщения (Error codes или Sense Codes), в шестнадцатеричном формате, описаны стандартом MMC-3. Так, например, код 2/3A/01 (Medium not present – tray closed) означает, что лоток закрыт, и диска в дисководе нет; код 3/11/00 (Unrecovered read error) – неисправимая ошибка чтения и т. д. Всего таких кодов 40. Операционная система Windows, как правило, интерпретирует их обобщенно – как отсутствие диска в приводе, ошибку чтения или ошибку записи (обычному пользователю подробности не нужны). Истинные значения кодов демонстрируют некоторые программы, например IsoBuster, или служебные утилиты от производителей дисководов.
Все прикладные программы обращаются к приводу CD/DVD через его интерфейс, и если микропрограмма отказалась признать наличие диска в приводе, этого диска «не существует» ни для операционной системы, ни для любой из программ восстановления данных. Нам же нужно каким-то образом прочитать содержимое диска программами, о которых пойдет речь далее, и хотя бы получить посекторный образ: из этого образа затем легко будет извлечь полезную информацию.
Для решения проблемы придется вскрывать сам привод. Устройство для чтения дисков с разрушенной служебной или нулевой дорожкой желательно делать из привода, который не жалко подвергнуть небольшому упрощению. Лучше всего для этих целей подойдет достаточно старый низкоскоростной привод – эти устройства обладали надежной механикой и оптической системой, а их микропрограммы были довольно просты.
Можно вспомнить тот факт, что для работы с диском на уровне секторов таблица TOC не слишком необходима. Приводу нужны лишь три основных поля TOC: стартовый адрес первой дорожки, чтобы знать, откуда начинать чтение; адрес выводной области диска, чтобы знать, до каких пор можно перемещать каретку; адрес следующей вводной области (только для многосессионных дисков). Стартовый адрес для всех дисков одинаков: он всегда равен 00:02:00 по временному коду, что соответствует нулевому адресу LBA. Адрес Lead-Out (выводной области) напрямую зависит от объема диска, но достаточно, чтобы полученный микропрограммой адрес был не меньше действительного адреса выводной области этого диска, иначе все расположенные дальше сектора окажутся недоступными. Если установить адрес Lead-Out на 80 или даже 90 минут, есть гарантия, что вся поверхность диска будет доступна приводу. Наконец, после вставки диска данные TOC кэшируются в собственной памяти привода и сохраняются там до тех пор, пока диск не будет корректно извлечен.
Микропрограмму можно обмануть: сначала дать приводу распознать диск с исправной служебной областью, а затем подменить его испорченным диском! О том, что диск извлечен, а затем загружен новый, микропрограмма судит по срабатыванию датчика лотка привода или нажатию кнопки извлечения диска. Достаточно извлечь нормальный диск, не нажимая кнопку и не выдвигая лоток, а затем точно так же вставить восстанавливаемый диск. В качестве нормального диска проще всего взять любой CD-ROM с записанным на нем фильмом объемом около 700 Мбайт. В таком случае данные TOC этого диска подойдут к любому восстанавливаемому CD-ROM. Точно так же для восстановления CD-R понадобится правильный CD-R, а для CD-RW – аналогичный CD-RW.
1. Разберите привод. Снимите верхнюю крышку и траверсу, на которой находится пластмассовый «пятачок» с магнитом, прижимающий диск к посадочной площадке шпинделя. Извлеките этот «пятачок» – им нужно будет фиксировать диск вручную.
2. Подключите привод к компьютеру. Включите компьютер. Желательно ограничить скорость вращения диска программным способом.
3. Откройте лоток штатной кнопкой. Затем закройте лоток, одновременно положив на шпиндель хороший диск и прижав его магнитным «пятачком».
4. Дождитесь, когда привод распознает диск и остановит его вращение. Осторожно снимите прижимной «пятачок», диск и вставьте диск, который нужно восстановить (рис. 5.10). На фотографии на треснувший диск наклеен кусок пленки «Оракал», а для балансировки симметрично приклеен второй квадрат.
Рис. 5.10. CD-ROM, подготовленный для «обмана»
5. Запустите одну из программ, рассмотренных в следующем разделе, например AnyReader или ISOBuster. Снимите посекторный образ диска этой программой. Пользуясь кэшированными данными TOC, привод благополучно начнет читать секторы подмененного диска. Открывать диск штатными средствами Windows бессмысленно – операционная система тоже кэширует данные о диске и будет искать на нем те файлы, которые были на правильном диске!
Подобная методика не всегда приводит к успеху, но применить ее все же стоит. Если поврежденный диск не удалось инициализировать даже таким способом, остается его утилизировать.
Программное восстановление данных
Особенность чтения/восстановления лазерных дисков в том, что многократное чтение одних и тех же участков иногда приводит к успеху. Если участок винчестера или ячейка flash-накопителя, которые не удается считать с первой попытки, абсолютно неисправны, то на лазерном диске неудачи при чтении нередко связаны с тем, что колебания отраженного луча оказываются «чуть за гранью распознавания». При повторной перефокусировке, очередном позиционировании каретки либо просто от вибрации во время очередной попытки чтения сектор может быть успешно прочитан, поэтому все программы, работающие с лазерными дисками, предусматривают возможность многократного чтения одних и тех же участков, если их нельзя прочитать с первого раза.
При восстановлении данных с лазерных дисков понадобятся три вида программ.
• Программы, позволяющие создать посекторный образ диска с пропуском или многократными попытками чтения дефектных секторов.
– С этой задачей хорошо справляются известные программы CloneCD и CloneDVD, хотя изначально они предназначались для копирования защищенных дисков.
– Среди специальных средств известны программы IsoBuster, AnyReader, Dead Disk Doctor. Эти же программы позволяют в дальнейшем извлекать файлы из полученного файла-образа и являются наиболее полезными при восстановлении данных с нечитаемых дисков.
• Программы для копирования файлов с поврежденного диска, заменяющие штатную процедуру операционной системы Windows. Они способны многократно считывать проблемные сектора и не вызывают сбой системы при встрече с такими секторами. Это программы АКОЛЬ, BadCopyPro и др.
• Программы, способные извлечь данные с диска с поврежденной файловой системой, или восстановить файлы, удаленные с перезаписываемого диска. Эти программы с равным успехом работают и с лазерным диском, и с его файлом-образом. На первом месте стоят рассмотренные ранее пакеты R-Studio и Easy Recovery.
Наконец, не стоит забывать о HEX-редакторах и дисковых редакторах. При наличии определенных навыков, желания и неограниченного времени ими тоже можно извлечь немало ценных данных из образов дисков. Почти все спецификации логической организации лазерных дисков есть в открытом доступе, хотя объем этих документов порой настораживает.
Программа IsoBuster
Эта программа считается таким же фактическим лидером в восстановлении информации с лазерных дисков, как программа R-Studio в восстановлении данных вообще. Новые версии программы с поддержкой многих языков, в том числе русского, доступны на сайте http://www.isobuster.com.