Poprzedni | W górę | Następny

Pliki i atrybuty

W NTFS każda struktura (także metadane i boot sector) jest plikiem.

Pliki w NTFS reprezentowane są jako zbiory struktur zwanych atrybutami. Każdy atrybut może wystąpić dla jednego pliku wielokrotnie, każdy może też mieć przypisaną nazwę.

Standardowo w NTFS istnieją następujące atrybuty:
0x10 $STANDARD_INFORMATION - standardowa informacja o pliku - oprócz wartości znanych z systemu FAT również informacje o quocie, zabezpieczeniach, właścicielu, czasie ostatniej zmiany, itp.
0x20 $ATTRIBUTE_LIST - patrz MFT.
0x30 $FILE_NAME - nazwa pliku.
0x40 $OBJECT_ID - unikalny identyfikator.
0x50 $SECURITY_DESCRIPTOR - szczegółowe informacje o zabezpieczeniach nałożonych na plik.
0x60 $VOLUME_NAME - nazwa partycji.
0x70 $VOLUME_INFORMATION - informacja o partycji
0x80 $DATA - zawartość pliku.
0x90 $INDEX_ROOT - patrz Katalogi.
0xA0 $INDEX_ALLOCATION - patrz Katalogi.
0xB0 $BITMAP - patrz Katalogi.
0xC0 $REPARSE_POINT - definiuje typ punktu reparsji założonego na pliku. Patrz Reparse Points.
0xD0 $EA_INFORMATION - używany przez OS/2 do emulacji HPFS.
0xE0 $EA - patrz wyżej.
0xF0 $PROPERTY_SET - nieużywany.
0x100 $LOGGED_UTILITY_STREAM - operacje na tym atrybucie są zapisywane w dzienniku logów.

Atrybuty nie są ustalone odgórnie, lecz zapisane w pliku systemowym $AttrDef. Istnieje więc możliwość ich zmiany lub dodania nowych.

Hard links

Twarde dowiązania implementuje się nadając plikowi kilka różnych atrybutów $FILE_NAME. Nazwa tego atrybutu jest równoznaczna z nazwą pliku.

Data streams

Wielokrotne wystąpienie atrybutu $DATA dla jednego pliku umożliwia zapisanie w jednym pliku wielu strumieni danych. Podstawową zawartość pliku określa nienazwane wystąpienie atrybutu $DATA, natomiast do innych strumieni w pliku można się odwoływać poprzez łańcuch "nazwa_pliku:nazwa_strumienia" (gdzie nazwa_strumienia jest nazwą odpowiedniego atrybutu $DATA).


Poprzedni | W górę | Następny