Файловая система NTFS извне и изнутри

       

Файловую систему NTFS принято описывать


Файловую систему NTFS принято описывать как сложную реляционную базу данных, обескураживающую грандиозностью своего архитектурного замысла не одно поколение начинающих исследователей. NTFS похожа на огромный, окутанный мраком, лабиринт, в котором очень легко заблудиться. Хакеры давно разобрались с основными структурами данных, осветив магистральные коридоры лабиринта светом множества факелов. Боковые ответвления разведаны намного хуже и все еще находятся по власти Тьмы, хранящей множество смертоносных ловушек, ждущих своих исследователей. В общем, если NTFS-"читалку" можно запрограммировать буквально за один вечер (с отладкой!), писать на NTFS-тома еще никто не рисковал. ###альтернативный вариант### …от магистральных коридоров лабиринта, ярко освещенных светов настенных факелов (и подсознательно ассоциируемых с хорошо исследованными структурами данных), отходит большое количество побочных ответвлений, освещенных значительно хуже (если освещенных вообще) и хранящих большое количество смертоносных ловушек (соответствующим особым случаям обработки казалось бы хорошо знакомых структур данных) ###.
К счастью, никто не требует от нас написания полноценного NTFS-драйвера! Наша задача значительно скромнее – вернуть разрушенный том в операбельное состояние, пригодное для восприятия операционной системой (задача максимум) или извлечь из него все ценные файлы (задача минимум). Вникать в структуру журналов транзакций, дескрипторов безопасности, двоичных деревьев индексаций для этого совершенно необязательно! Реально нам потребуется разобраться лишь с устройством главной файловой записи – MFT и нескольких дочерних подструктур.
Основным источником данных по NTFS служат:
а) книга Хелен Кастер (Helen Custer, часто сокращаемая до просто "Helen") "Inside the Windows NT file system" (в русском издании она входит в состав "Основы Windows NT и NTFS"), подробно описывающая концепции файловой системы и дающая о ней общее представление. К сожалению, все объяснения ведутся на абстрактном уровне без указания конкретных числовых значений, смещений и структур. К тому же, в операционных системах Windows 2000 и Windows XP с файловой системой произошли значительные изменения, никак не отраженные в книге. Если не найдете эту книгу в магазинах – ищите ее в файлообменных сетях. В них есть все! (Например, воспользуйтесь "Ослом" – www.eMule.ru).


б) хакерская документация от коллектива "Linux-NTFS Project" (http://linux-ntfs.sourceforge.net/), чьим хобби долгое время была разработка независимого NTFS-драйвера для OS Linux, однако, сейчас энтузиазм команды начал стремительно угасать. Это выдающееся творение, подробно описывающее все ключевые структуры файловой системы (естественно, на английском языке), отнюдь не заменяет книгу Хелен, а лишь расширяет ее! Разобраться в NTFS-project'e без знаний NTFS очень и очень непросто!
в) документация от Active Data Recovery Software на утилиту Active Uneraser, бесплатную копию которой можно найти на сайте www.NTFS.com. Это своеобразный синтез книги Хелен и Linux-NTFS Project, описывающий важнейшие структуры данных и обходящий стороной все вопросы, которые только можно обойти. Здесь же можно найти до предела выхолощенное изложение методики восстановления данных. В общем, если не найдете Хелен, скачайте демонстрационную версию Active Uneraser и воспользуйтесь прилагаемой к нею документацией (внимание! Active Uneraser поставляется в двух вариантах – образе FDD и образе CD, документация присутствует только на последнем из них).
г) контекстная помощь на Disk Explorer так же содержит достаточно подробное описание файловой системы, однако, на редкость бестолково организованное. Для упрощения навигации по тексту рекомендуется декомпилировать chm-файл в обычный текст, вручную перегнав его в MS Word, pdf или любой другой симпатичный вам формат.
Наконец, вы можете воспользоваться этой статьей ### ;) Однако, наличие документации Linux-NTFS Project все же очень желательно, поскольку мы будем часто ссылаться на нее.

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