Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #46, СЕНТЯБРЬ 2004 г.

Откопай и оживи!

Крис Касперски

Спецвыпуск Xakep, номер #046, стр. 046-070-3


Для восстановления винчестера, содержащего один или несколько NTFS-разделов, подключи его "вторым" к компьютеру, на котором уже установлена Windows NT/2000/XP со всем необходимым ПО. Также потребуется консоль восстановления. Она представляет собой разновидность командного shell'а с кучей полезных утилит на борту и выглядит приблизительно так же, как и старый добрый command.com. По умолчанию, мы имеем доступ только к папкам WINNT и Program Files, а чтобы скопировать данные из других папок (при условии что файловая система еще цела) необходимо заблаговременно в "Локальных параметрах безопасности" (папка Администрирование в Панели Управления) найти пункт "Консоль восстановления: разрешить копирование дискет и доступ ко всем папкам" и перевести рубильник во включенное состояние. Как вариант, можно, не покидая консоль восстановления, отдать команду "SET AllowAllPaths = true" для разблокирования доступа ко всем каталогам и "SET AllowRemovableMedia = true" для снятия запрета копирования файлов на гибкий диск.

Непосредственно из консоли восстановления можно запустить "chkdsk логический_диск". Ключ "/p" означает более глубокую проверку с внесением всех изменений, а ключ "/r" – поиск и восстановление дефектных секторов. Пользоваться chkdsk категорически не рекомендуется, но, если никаких других идей нет, сойдет и он.

Если ни один логический диск не доступен (команда "С:" выдает ошибку, а chkdsk говорит, что такого тома просто нет), скорее всего повреждена таблица разделов (partition table), находящаяся в главном загрузочном секторе (Master Boot Record, сокращенно MBR). Ее восстановлением занимаются десятки утилит (например, Media RECORVER - www.mediarecover.com/advanced-file-recovery.html), но при желании эту операцию можно осуществить и самостоятельно (см. врезку "Техника восстановления MBR-сектора"). Консоль восстановления поддерживает команду FIXMBR физический диск (физический диск задается в формате \Device\HardDiskN, где N – номер винчестера, считая от нуля), которая, если верить названию, должна лечить MBR, но на самом деле она всего лишь записывает туда системный загрузчик, оставляя таблицу разделов в том состоянии, в котором она была. Восстановление системного загрузчика требуется в тех случаях, когда BIOS не может обнаружить загрузочный диск, выдавая сообщение "not-system disk" или что-то в этом роде. Соответственно, команда FIXBOOT (без параметров) "лечит" основной загрузочный раздел, а, точнее, записывает в его начало стандартный boot-загрузчик. Воспользуйся ей, если операционная система не загружается, а на экране появляется надпись наподобие "missing operation system".

Если корневой каталог не отображается или содержит бессвязный мусор, то случилось самое страшное, что только могло произойти, – навернулась главная файловая таблица (Master File Table, сокращенно MFT), описывающая размещение файлов на диске. Вообще говоря, такое случается крайне редко. Благодаря поддержке механизма транзакций Windows автоматически выполняет откат, если операция обновления файловой системы завершилось неуспешно. Однако когда NTFS-драйвер едет крышей (например, из-за конфликтов с другими драйверами или нарушения целостности кэш-буфера), транзакции уже не спасают и дисковая структура гробится. Первые четыре записи таблицы MFT хранятся в специальном резервном файле, на который указывает поле "Cluster to MFT mirr", и могут быть элементарно восстановлены. А как быть со всеми остальными? Увы! Искаженные записи утеряны безвозвратно! Если диск не был обработан «врачевателями» типа chkdsk или NDD (Norton Dist Destroyer;), то шансы на ручное восстановление информации достаточно велики, однако даже поверхностное изложение методик восстановление требует сотен страниц убористого текста :). Единственная достойная, на мой взгляд, утилита – это Crash Undo 2000, вытягивающая максимум информации, которую только можно вытащить из уцелевших осколков, и практически не уступающая ручному восстановлению. Однако никаких гарантий того, что после лечения диску не сделается еще хуже, у нас нет.

Назад на стр. 046-070-2  Содержание  Вперед на стр. 046-070-4