Типы атрибутов
NTFS поддерживает большее количество предопределенных типов атрибутов, перечисленных в табл. 6.6. Тип атрибута определяет его назначение и формат представления тела. Полное описание всех атрибутов заняло бы не одну главу, а целую книгу, поэтому здесь приводятся лишь наиболее "ходовые" из них, а за информацией об остальных обращайтесь к документации Linux-NTFS Project.
Таблица 6.6. Основные типы атрибутов
Значение ОС Условное обозначение Описание 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.
Таблица 6.7. Структура атрибута $STANDARD_INFORMATION
Атрибут списка атрибутов (прямо каламбур) используется в тех случаях, когда все атрибуты файла не умещаются в базовой файловой записи, и файловая система вынуждена располагать их в расширенных файловых записях. Индексы расширенных файловых записей содержатся в атрибуте списка атрибутов, помещаемом в базовую файловую запись.
При каких обстоятельствах атрибуты не умещаются в одной файловой записи? Это может произойти в следующих случаях:
□ файл содержит много альтернативных имен или жестких ссылок;
□ файл сильно фрагментирован;