Skip to main content

NTFSInfo 1.0

Автор: Марк Руссинович (Mark Russinovich)

Опубликовано 1 ноября 2006 г.

Введение

NTFSInfo — это небольшая программа, выводящая сведения о томах NTFS. В ее выходных данных имеются сведения о размере кластеров диска, расположении основных файлов NTFS и размере имеющихся в составе тома файлов метаданных NTFS. Как правило, эта информация скорее интересна, чем полезна, но некоторые данные, выводимые NTFSInfo, действительно стоят того, чтобы обратить на них внимание. К примеру, вы, наверное, слышали о том, что в NTFS имеется аналог таблицы размещения файлов, применяемой в файловой системе FAT. Она называется основной таблицей файлов (MFT) и состоит из записей постоянного размера, которые описывают расположение всех файлов и каталогов на диске. Интересно, что MFT ведется в виде файла, который ничем не отличается от многих других. Помимо определения размера кластеров и записей MFT тома, программа NTFSInfo указывает расположение (кластер) таблицы MFT на диске и ее размер. В целях защиты таблицы MFT от фрагментации в файловой системе NTFS резервируется смежная с ней область диска, которая становится доступна для размещения других файлов только в условиях нехватки пространства. Эта область называется зоной MFT, а программа NTFSInfo сообщает о ее местоположении на диске и объеме зарезервированного для ее размещения дискового пространства.

Что удивительно, не только таблица MFT, но и все метаданные NTFS хранятся в виде файлов. К примеру, существует файл $Boot, отображенный на загрузочный сектор диска. Таблица кластеров тома сопровождается в другом файле — $Bitmap. Эти файлы находятся непосредственно в корневом каталоге NTFS, но, не зная этого, увидеть их нельзя. Попробуйте ввести в корневом каталоге тома NTFS команду «dir /ah $boot», и вы сможете убедиться в наличии файла $boot. Программа NTFSInfo выполняет действия, аналогичные команде "dir /ah", указывая имена и размеры всех файлов метаданных NTFS (версий 3.51 и 4.0).

Предполагалось, что программа NTFSInfo выйдет вместе с моей колонкой «Внутреннее устройство NT» в январском выпуске журнала Windows NT Magazine за 1998 год, посвященной описанию внутренних структур данных NTFS.


Установка и применение

NTFSInfo работает во всех версиях NTFS, однако файлы метаданных, реализованные в версии NTFS для Windows NT 5.0, в ней еще не запрограммированы. Для работы с программой NTFSInfo необходимы привилегии администратора. Для вызова программы введите команду «NTFSInfo x», где «x» следует заменить буквой тома NTFS, который предполагается проанализировать.


Принцип работы

Программа NTFSInfo использует недокументированный вызов управления файловой системой (FSCTL), который позволяет программе извлекать из NTFS данные о томах. Информация выводится вместе с содержимым каталога с файлами метаданных NTFS.