Восстановление данных. Практическое руководство
Шрифт:
Первые
Кстати говоря, локализовав сообщения загрузчика в национальных версиях Windows, например, в русской, Microsoft допустила грубейшую стратегическую ошибку. Ведь в BIOS нет никаких кириллических шрифтов, поэтому русские символы выглядят бессмысленной абракадаброй.
По смещению
Со смещения
Таблица 5.2. Формат записи таблицы разделов
| Смещение | Размер | Описание | ||||
|---|---|---|---|---|---|---|
| 000 | 1ВЕ | 1CE | 1DE | 1EE | byte | Флаг активного загрузочного раздела (Boot Indicator). 80h — загрузочный раздел, 00h — незагрузочный раздел |
| 001 | 1BF | 1CF | 1DF | 1EF | Стартовая головка раздела | |
| 002 | 1C0 | 1D0 | 1E0 | 1F0 | byte | Стартовый сектор раздела (биты 0–5). Старшие биты стартового цилиндра (биты 6–7) |
| 003 | 1C1 | 1D1 | 1E1 | 1F1 | byte | Младшие биты стартового цилиндра (биты 0–7) |
| 004 | 1C2 | 1D2 | 1E2 | 1F2 | byte | Идентификатор системы (Boot ID), см. табл. 5.3 |
| 005 | 1C3 | 1D3 | 1E3 | 1F3 | byte | Конечная головка раздела |
| 006 | 1С4 | 1D4 | 1E4 | 1F4 | byte | Конечный сектор раздела (биты 0–5). Старшие биты конечного цилиндра (биты 6–7) |
| 007 | 1C5 | 1D5 | 1E5 | 1F5 | Младшие биты конечного цилиндра (биты 0–7) | |
| 008 | 1C6 | 1D6 | 1E6 | 1F6 | dword | Смещение раздела относительно начала таблицы разделов в секторах |
| 00C | 1CA | 1DA | 1EA | 1FA | dword | Количество секторов раздела |
Таблица 5.3. Возможные значения Boot ID
| Boot ID | Тип
|
|---|---|
| 00h | Раздел свободен |
| 0x01 | Раздел FAT12 (менее чем 32 680 секторов в томе или 16 Мбайт) |
| 0x04 | Раздел FAT16 (32 680–65 535 секторов или 16–33 Мбайт) |
| 0x05 | Расширенный раздел (extended partition) |
| 0x06 | Раздел BIGDOS FAT16 (33 Мбайт–4 Гбайт) |
| 0x07 | Раздел NTFS |
| 0x0B | Раздел FAT32 |
| 0x0C | Раздел FAT32 с поддержкой расширенной BIOS INT 13h |
| 0x0E | Раздел BIGDOS FAT16 с поддержкой расширенной BIOS INT 13h |
| 0x0F | Расширенный раздел с поддержкой расширенной BIOS INT 13h |
| 0x12 | Раздел EISA |
| 0x42 | Динамический диск |
| 0x86 | Раздел legacy FT FAT16 |
| 0x87 | Раздел legacy FT NTFS |
| 0x8B | Наследуемый отказоустойчивый том, отформатированный для FAT32 (Legacy FT volume formatted with FAT32) |
| 0x8C | Наследуемый отказоустойчивый том с поддержкой BIOS INT 13h , отформатированный для FAT32 (Legacy FT volume using BIOS INT 13h extensions formatted with FAT32) |
Техника восстановления главной загрузочной записи
Существует множество утилит для автоматического восстановления первичного загрузчика и таблицы разделов, к числу которых относятся, например, GetDataBack, Easy Recovery, Active@Data Recovery Software и др. До поры до времени они вполне успешно справлялись со своей задачей, восстанавливая даже полностью уничтоженные таблицы разделов, однако с появлением емких дисков, преодолевших барьер в 2 Гбайт с помощью всевозможных расширений, они стали часто путаться. Поэтому и доверять им больше нельзя. Если не хотите потерять свои данные — восстанавливайте MBR самостоятельно (тем более что это достаточно простая операция, не требующая особой квалификации). Восстановление значительно упрощается, если в вашем распоряжении имеется копия таблицы разделов, снятая с помощью Sector Inspector или любой другой подобной утилиты. К сожалению, чаще всего ее под рукой не оказывается…
Если операционная система отказывается загружаться, а на экране появляется сообщение BIOS, выглядящее примерно следующим образом:
Очень важно отличать сообщение BIOS от сообщений первичного загрузчика и загрузочного сектора. Зайдите в BIOS Setup и отключите все загрузочные устройства, оставив активным только диск
Восстановить сигнатуру
Если вы испытываете затруднение с дизассемблированием в уме, воспользуйтесь IDA PRO или HIEW. Вы не умеете дезассемблировать? Тогда попробуйте оценить степень "нормальности" первичного загрузчика визуально (однако для этого опять-таки требуется опыт работы с кодом). В начале более или менее стандартного загрузчика расположено приблизительно