Урок 4. Восстановление удаленных разделов.
1) Исходные данные.
2) Инструменты.
3) Эмуляция событий.
4) Техника безопасности.
5) Процесс восстановления файлов.
Исходные данные
Разберем ситуацию, когда случайно произошел сбой в операционной системе (или вирус постарался, или зависание Partition Magic, или другое событие), вобщем которое привело к исчезновению логической структуры жеcткого диска, грубо говоря, пропали разделы (перестали видеться). Как последствие такого сбоя, если подключить винт на другой компьютер, вы в управлении дисками (прав. кнопка мышки Мой компьютер -Уравление - Управление дисками) увидите следующую картину :
Инструменты
Есть два способа восстановления данных в таком случае: - "красивый" -вернуть все разделы на место, но он сложный, или - простой (смотри Урок2 - Восстановление данных после форматирования), но грязный. Мы, как настоящие бойскауты пойдем красивым и сложным путем. :).
Итак, для этого нам понадобится любой HEX редактор (на наш взгляд, самый оптимальный и удобный под Windows - WinHex).
Эмуляция событий
Берем жесткий диск на 40 Гб, размеченный на два раздела, оба основные(primary), и отформатированные в файловой системе NTFS. На обоих логических дисках лежит важная информация.
Теперь "ложим" (убиваем) оба раздела. Для этого достаточно запустить Partition Magic, дать ему завиcнуть в процессе внесения изменений.
Техника безопасности
1) Мы будем вносить изменения на диск, поэтому нужно обязательно сделать физическую копию диска (бэкап, можно в файл образ). Это делается следующим образом (в WinHex):
Tools - Disk Tools - Clone Disk (Ctrl-D) далее в выпавшем меню в Soource medium указываем Physical Media (название вашего винчестера)
в Destination: raw image file - пишем желаемое название файла образа и указываем место где ему лежать.
2) Если вы неуверены в своих действиях и у вас нет возможности подключить диск в другой компьютер и сделать образ - отдайте его на "операцию" профессионалам. Здесь главное не ошибиться иначе потеряете все.
Процесс восстановления разделов.
Запускаем WinHex. Открываем диск с потерянными разделами.Смотрим 0-ой сектор , изучаем проблему. В 0-ом секторе должен лежать ПРАВИЛЬНЫЙ master boot record. Если он поврежден или неправильный - система не сможет подмонтировать логическую структуру диска. Итак "подрехтуем" master boot record собственноручно, так чтобы появились наши пропавшие разделы.
Итак, приступим. Master boot record (не путать с boot-sector ), это 0-ой сектор, здесь хранится вся информация о разделах (количество, размеры, адреса бут-секторов, тип файловой системы). Когда вы размечаете при помощи Partition Magic или Fdisk свой винчестер вы вносите изменения именно в Master boot record.
Входим в меню выбираем : View - Template Manager (Alt F12), выскакивает такое окно:
В этом окне выбираем Master Boot Record (Containes Partition Table) (для просмотра мастер бут (0-го сектора) и внесения в него изменений), нажимаем Apply!
После неизвестного глюка в мастер бут рекорде может находиться много неверной и лишней информации, поэтому мы все обнулим. Вот так:
Теперь поставим правильные флаги:
Partition Table Entry #1 Это первый раздел
1 |
*1BE 80 = active partition |
ставим 0 если небыл загрузочным диск и 80 если был загрузочным |
0 |
2 |
*1BF Start head |
неважно (не трогаем) |
0 |
3 |
*1C0 Start sector |
неважно (не трогаем) |
0 |
4 |
*1C0 Start cylinder |
неважно (не трогаем) |
0 |
5 |
*1C2 Partition type indicator (hex) |
внимание! Это тип файловой системы. У нас NTFS, значит ставим флаг 07 |
07 |
6 |
1C3 End head |
неважно (не трогаем) |
0 |
7 |
1C4 End sector |
неважно (не трогаем) |
0 |
8 |
1C4 End cylinder |
неважно (не трогаем) |
0 |
9 |
*1C6 Sectors preceding partition 1 |
Сектор с которого начинается раздел (1-й раздел стартует с boot-сектора, тоесть с сектора №63) |
63 |
10 |
*1CA Sectors in partition 1 |
Сколько секторов у нас в этом разделе
Указываем количество секторов 1-го раздела. (Если не знаем, находим начало следующего раздела (см. Поиск границы разделов) и от номера этого сектора отнимаем 63. Если один раздел - ставим максимальное значение размера Вашего диска)
|
39070079 |
Очень важно знать размер первого раздела (в секторах), если вы этого не знаете, давайте найдем эту информацию на самом диске.
Поиск границы разделов
Граница 2-х разных разделов отличается тем, что 1-й раздел заканчивается бут-сектором, и 2-й раздел начинается своим новым бут-сектором., (тоесть идут 2-а подряд бут-сектора). Достаточно найти эту границу и запомнить порядковый номер сектора.
Поиск boot-секторов в winhex производится следующим образом:
Заходим в меню WinHex-Search , выбираем Find Hex Values
Вбиваем правильные параметры для поиска:
1) hex values - 55AA это сигнатура сектора. Для boot-сектора её значение обязательно 55AA.
2) Search: Выбираем Down (Ищем сверху-вниз)
3)Cond.: offset mod - выбираем 512=510 (В секторе у нас 512 байт, наша сигнатура пишется со смещением в 510 байт в пределах сектора)
Нажимаем ок .
Теперь внимание! Вы можете найти сотню разных бутов в пределах дискового пространства (остатки предыдущих разметок), но нас интересуют адреса именно тех бут-секторов, которые отвечают 2-м условиям:
1) Они находятся примерно в той области, где должен заканчиваться первый раздел (в нашем случае 20Гб, тоесть примерно посередине диска)
2) Они идут два подряд (Обязательно). (1-й раздел заканчивается копией своего бута, второй раздел начинается своим собственным бутом).
Partition Table Entry #2 Это второй раздел (если он есть)
1 |
*1BE 80 = active partition |
ставим 0 если небыл загрузочным диск и 80 если был загрузочным |
80 |
2 |
*1BF Start head |
неважно (не трогаем) |
0 |
3 |
*1C0 Start sector |
неважно (не трогаем) |
0 |
4 |
*1C0 Start cylinder |
неважно (не трогаем) |
0 |
5 |
*1C2 Partition type indicator (hex) |
внимание! Это тип файловой системы. У нас NTFS, значит ставим флаг 07 |
07 |
6 |
1C3 End head |
неважно (не трогаем) |
0 |
7 |
1C4 End sector |
неважно (не трогаем) |
0 |
8 |
1C4 End cylinder |
неважно (не трогаем) |
0 |
9 |
*1C6 Sectors preceding partition 1 |
Сектор с которого начинается раздел (1-й раздел стартует с boot sector тоесть с 63) |
39070080 |
10 |
*1CA Sectors in partition 1 |
Сколько секторов у нас в этом разделе
Указываем количество секторов 2-го раздела. (Если у нас два раздела, то это значение равно: полный объем диска минус первый раздел минус 63)
|
39070080 |
Внеся правильные изменения в мастер бут, необходимо их сохранить, для этого закрываем окно Template Manager, вас система спросит сохранить ли изменения, отвечайте ОК. После закройте выбранный жестких диск и вас программа опять спросит сохранить ли изменения в 0-й сектор уже диска, отвечайте ОК.
Перегружаем компьютер.
Заходим в Мой компьютер - управление - управление дисками
и что мы Видим :)
Заходим в Мой компьютер и открываем рабочие, восстановленные разделы :) со всем содержимым.
Материал принадлежит ООО "Рекавери Дата Медиа". Перепечатка статьи допускается с обязательным ссыланием на сайт авторов www.rdm.kiev.ua