Заметки о восстановлении данных на жестких дисках

  35790931     

>>> Врезка техника восстановления MBR-сектора


MBR сектор содержит системный загрузчик и таблицу разделов. Системный загрузчик восстанавливается командой FIXMBR из консоли восстановления или программой FDISK, запущенной с ключом MBR. Восстановить таблицу разделов намного сложнее, особенно если винчестер был разбит на несколько логических дисков. Впрочем, глаза страшатся, а руки делают, так что не будем паниковать.

Используя Disk Probe от Microsoft или Disk Editor

от Symantec, забейте нулевой сектор физического диска нулями, чтобы избавиться от мусора который может помешать нормальному восстановлению. Для этого в меню "Drives" выбираем "Physical Drive", там дважды щелкните по "Physical Drive 0" (или другому загрузочному устройству), снимете галочку "Read Only" и скажите "Set Active". Затем нажмите "OK", для возвращения в основное окно программы, и перейдите в меню "Sectors". Выбрав команду "Read", в поле "Start Sectors" введите "0" скажите "ОК" еще раз. Для представления информации в более наглядном виде в меню "View" можно выбрать пункт "Partition table".

Если диск не был разбит и содержит всего один логический раздел, для его восстановления все поля следует заполнить следующим образом: "Boot Indicator" – в SYSTEM, "System ID" – в NTFS, Starting Head/Sector/Cylinder – в 1/1/0, а Ending Head/Sector/Cylinder – на последнюю головку/сектор/цилиндр вашего жесткого диска соответственно (параметры диска можно узнать в BIOS). Total Sectors – содержит полное количество секторов, а Relative Sector вычисляется по следующей формуле: (Cylinder number * Sectors per Track * Heads) + (Head number * Sectors per Track) + (Sector Number -1), что соответствует адресу 0/0/1. (Значения Sector per Track и Sector per Track можно узнать из диалогового ока "Disk Information", вызываемого через меню "Drives"). После сохранения внесенных изменений, перезагрузитесь и, войдя в консоль восстановления, отдайте команду FIXMBR для записи системного загрузчика.


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



Рисунок 6 восстановление таблицы разделов

Разбитые диски одолеть значительно сложнее. Как минимум необходимо определить границы первичного раздела и реконструировать ссылку на расширенный раздел. Это можно сделать как автоматически (например, утилитой DiskEditor от PhysTechSoft, не путать с Disk Editor от Symantec), так и вручную. Будем отталкиваться от того факта, что в начале каждого раздела расположен boot-сектор. Предположим, что он не затерт, тогда начало следующего раздела можно идентифицировать по его имени (например, "NTFS"), находящемуся по смещению 3 относительно начала сектора. В меню "Tools" выбираем "Search Sectors" и заполняем поля появившегося диалогового окна в соответствии с приведенным рисунком, подставляя вместо "Last sector to search" размер вашего винчестера в секторах.



Рисунок 7 поиск следующего раздела

После достаточного продолжительного шуршания диском, когда наконец требуемый сектор будет найден, переключитесь в режим "NTFS Bootsector", убедившись в правдоподобности всех полей и в том, что это не зеркальная копия boot-сектора основного раздела. Если все поля правдоподобны и не совпадают с полями основного boot-сектора, отнимите от него удвоенное значение "Sector per Track" (это можно узнать в Drivers à Volume Information) и уменьшите его еще на единицу. В результате вы получите размер первого раздела в секторах. Занесите его в "Total Sectors", а затем заполните поля Ending Head/Sector/Cylinder, вычисляя их на основе Total Sectors с одной стороны и значений Sector per Track, Track per Cylinder с другой.

Теперь переместите "Partition Table Index" на Partition 2, "System ID" на Extended (или Extended LBA если требуется включение поддержки больших дисков), в поле Relative Sector занесите сектор с найденным boot'ом увеличив его на единицу, а так же заполните поля Staring Head/Sector/Cylinder, вычисляя их на основе Relative Sector за вычетом значения Sector per Track (вспомните вышеприведенную формулу!). При стандартной разбивке поля Ending Head/Sector/Cylinder указывают на конец диска и заполняются элементарно.

После перезагрузки войдите в консоль восстановления и дайте команду FIXMBR. Перезагрузитесь еще раз. Все потерянные логические разделы должны появится вновь. Если же этого не произошло… Что ж! Тогда обращайтесь за помощью к настоящим профессионалам!


Содержание раздела