Перед тем, как редактировать метаданные, надо понять, четко понимать, что такие действия могут привести к еще большей потере данных на диске, а также к осложнениям при восстановлении данных, если вы все же решите попробовать этот путь.
Давайте сначала посмотрим в целом на метаданные на томе fat: какие они и редактирование каких метаданных ведет к каким последствиям.
В секторе 0 на диске fat обычно находится загрузочный сектор FAT, который на здоровом томе выглядит так (тут и везде далее мы используем наш бесплатный Дисковый Редактор Vолга):
При этом в Управлении Дисками диск выглядит так:
Отредактируем в загрузочном секторе последние два байта, где находится подпись 55 AA: запишем туда нули.
Диск при этом сразу становится недоступным:
При переподключении диска к компьютеру Windows предалагает отформатироать его (не делайте этого):
Вернем подпись 55 AA на место и опять получим здоровый логический диск:
Итак, продолжим наш эксперимент, на этот раз будем редактировать метаданные самой файловой системы, а именно указатель на таблицу FAT, который находится в загрузочном секторе. Обнуляем указатель вот так:
После такого редактирования оффсета на FAT и переподключении диска получаем сообщение:
И в Управлении Дисками видим файловую систему RAW для нашего диска:
Таким образом, мы получили диск с файловой системой RAW в тот момент, когда ссылка на таблицу FAT оказалась неправильной. Как только мы вернем все как было, том опять станет доступным. Откуда же брать правильное значение этой ссылки на поврежденном томе? Ответ очевидный - из бекапного загрузочного сектора. Однако, тут есть свои особенности: У FAT, в отличие от NTFS, бекапный сектор не находится в конце тома, а расположен обычно в начале тома, недалеко от основного, в нашем случае в секторе 6. Такое расположение часто приводит к тому, что при повреждении основного загрузочного сектора, бекапный тоже оказывается повреждённым, так как расположен рядом. Поэтому часто в случае сбоя неоткуда будет взять метаданные, для того чтобы попробовать подредактировать основной загрузочный сектор.
Итак, если ссылка на таблицу FAT неправильная, то том не откроется, а значит для редактирования надо точно знать, в каком секторе начинается таблица FAT.
Давайте откроем таблицу FAT на здоровом томе, щелкнем в нашем дисковом редакторе по синему полю FAT #0, что приведет нас в сектор 2990: именно это значение и написано в загрузочном секторе, только в шестнадцатеричном виде, то есть AE 0B (на самом деле 0xBAE = 2990, но байты хранятся в формате Big Endian, то есть как бы в перевернутом виде, когда старший байт записывается первым). Заметим, что на томах FAT значение этого сектора не является константой, а значит вы не можете использовать это значение и нужно выяснять номер сектора начала таблицы FAT в вашем конкретном случае.
Итак, идем в сектор 2206:
Так примерно и выглядит таблица FAT, она находится в начале томе, и в ней явно будут секции из FF FF FF 0F. Причем, начало таблицы будет на границе сектора с данными и сектора с нулями, так в предыдущем секторе находятся нули:
То есть один из подходов к поиску таблицы FAT руками – это с помощью редактора дисков искать сектор на границе между нулевым и ненулевым, и смотреть, чтобы начиная с такого сектора попадались примерно группы FF FF FF 0F.
Заметим, что если флешка была довольно заполнена данными, то блоков FF FF FF 0F может и не быть, тогда все же лучше положиться на софт по восстановлению данных, который имеет сложные алгоритмы поиска и восстановления метаданных FAT.
Давайте еще раз посмотрим на здоровый загрузочный сектор FAT:
В принципе, все, что на скриншоте разобрано по полям (справа) важно, как мы уже показали:
Таким образом, мы рассмотрели, какие основные метаданные есть на диске RAW, который раньше был отформатирован в FAT32, и что можно подредактировать, чтобы сконвертировать raw в FAT обратно.