Смещение | Размер (байт) | Значение | Описание | |
---|---|---|---|---|
00h | 4 | Тип атрибута (например, 0x20 , 0x80 ) | ||
04h | 4 | Длина атрибута, включая этот заголовок | ||
08h | 1 | 01h | Флаг нерезидентности (non-resident flag) | |
09h | 1 | N | Длина имени атрибута (ноль, если атрибут безымянный) | |
0Ah | 2 | 40h | Смещение имени (ноль, если атрибут безымянный) | |
0Ch | 2 | Флаги | ||
Значение | Описание | |||
0001h | Сжатый атрибут (compressed) | |||
4000h | Зашифрованный атрибут (encrypted) | |||
8000h | Разреженный атрибут (sparse) | |||
0Eh | 2 | Идентификатор атрибута (attribute ID) | ||
10h | 8 | Начальный виртуальный кластер (starting VCN) | ||
18h | 8 | Конечный виртуальный кластер (last VCN) | ||
20h | 2 | 2N+40h | Смещение списка отрезков (data runs) | |
22h | 2 | Размер блока сжатия (compression unit size), округленный до 4 байт в большую сторону | ||
24h | 4 | 00h | Используется для выравнивания | |
28h | 8 | Выделенный размер (allocated size), округленный до размера кластера | ||
30h | 8 | Реальный размер (real size) | ||
38h | 8 | Инициализированный размер потока (initialized data size of the stream) | ||
40h | 2N | UNICODE | Имя атрибута (если есть) | |
2N+40h | … | Список отрезков (data runs) |
Типы атрибутов
NTFS поддерживает большее количество предопределенных типов атрибутов, перечисленных в табл. 6.6. Тип атрибута определяет его назначение и формат представления тела. Полное описание всех атрибутов заняло бы не одну главу, а целую книгу, поэтому здесь приводятся лишь наиболее "ходовые" из них, а за информацией об остальных обращайтесь к документации Linux-NTFS Project.
Значение | ОС | Условное обозначение | Описание |
---|---|---|---|
010h | Любая | $STANDARD_INFORMATION | Стандартная информация о файле (время, права доступа) |
020h | Любая | $ATTRIBUTE_LIST | Список атрибутов |
030h | Любая | $FILE_NAME | Полное имя файла |
040h | Windows NT | $VOLUME_VERSION | Версия тома |
040h | Windows 2000 | $OBJECT_ID | Глобально уникальный идентификатор (GUID) и прочие ID |
050h | Любая | $SECURITY_DESCRIPTOR | Дескриптор безопасности и списки прав доступа (ACL) |
060h | Любая | $VOLUME_NAME | Имя тома |
070h | Любая | $VOLUME_INFORMATION | Информация о томе |
080h | Любая | $DATA | Основные данные файла |
090h | Любая | $INDEX_ROOT | Корень индексов |
0A0h | Любая | $INDEX_ALLOCATION | Ветви (sub-nodes) индекса |
0B0h | Любая | $BITMAP | Карта свободного пространства |
0C0h | Windows NT | $SYMBOLIC_LINK | Символическая ссылка |
0C0h | Windows 2000 | $REPARSE_POINT | Для сторонних производителей |
0D0h | Любая | $EA_INFORMATION | Расширенные атрибуты для HPFS |
0E0h | Любая | $EA | Расширенные атрибуты для HPFS |
0F0h | Windows NT | $PROPERTY_SET | Устарело и ныне не используется |
100h | Windows 2000 | $LOGGED_UTILITY_STREAM | Используется шифрующей файловой системой (EFS) |
$STANDARD_INFORMATION
Атрибут стандартной информации описывает время создания/изменения/последнего доступа к файлу и права доступа, а также некоторую другую вспомогательную информацию (например, квоты). Структура атрибута стандартной информации кратко описана в табл. 6.7.