Восстановление информации своими руками

размер кластера, выбираемый Windows 2000 по умолчанию


К блоку параметров BIOS вплотную примыкает его продолжение – extended BPB, хранящий номер первого кластера MFT, ее размер в кластерах, номер кластера с зеркалом MFT и некоторую другую информацию. В отличии от FAT16/32, MFT может располагаться в любом месте диска (для борьбы с BAD-секторами это актуально). При нормальном развитии событий MFT располагается практически в самом начале диска (где-то в районе 4 кластера) и если только она не была перемещена ее легко найти глобальным поиском (строка "FILE*" по смещению 0 от начала сектора). При разрушении или некорректном заполнении extend PBP, драйвер файловой системы отказывается монтировать раздел, объявляя его не отформатированным.

Следом за extend PBP идет Bootstrap Code, который ищет на диске операционный загрузчик (у Windows NT это ntldr), загружает его в память и передает ему управление. Если Bootstrap Code отсутствует, загрузка операционной системы становится невозможной, однако, при подключении восстанавливаемого диска вторым, раздел должен быть прекрасно виден. Порча Bootstrap Code кода вызывает перезагрузку компьютера или его зависание.

И завершает boot-сектор уже известная нам сигнатура 55h AAh, без которой он ни за что не будет признан загрузочным.



смещение

размер

назначение

0x00

3 bytes

инструкция перехода

0x03

8 байт

OEM ID

0x0B

WORD

байт на сектор (для жестких дисков всегда 512)

0x0D

BYTE

секторов на кластер

0x0E

WORD

кол-во зарезервированных секторов, всегда (?) равно 0

0x10

3 BYTES

не используется NTFS и всегда должно быть равно 0

0x13

WORD

не используется NTFS и всегда должно быть равно 0

0x15

BYTE

медиа дескрпитор для жестких дисков всегда равен 0xF8

0x16

WORD

не используется NTFS и всегда должно быть равно 0

0x18

WORD

кол-во секторов в треке

0x1A

WORD

кол-во головок

0x1C

DWORD

кол-во скрытых секторов

0x20

DWORD

не используется NTFS и всегда должно быть равно 0

0x24

DWORD

не используется NTFS и всегда должно быть равно 0

0x28

8 байт

общее количество секторов (total sector)

0x30

8 байт

логический номер кластера, с которого начинается MTF

0x38

8 байт

логический номер кластера, с которого начинается зеркало MTF

0x40

DWORD

кол-во кластеров на сегмент (File Record Segment)

0x44

DWORD

кол-во кластеров на блок индексов (index block)

0x48

8 байт

серийный номер тома

0x50

DWORD

контрольная сумма (0 – не подсчитывать).

0x54

426 bytes

Bootstrap Code

0x01FE

WORD

55 AA



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