|
NTFS File Attributes
The NTFS file system views each file (or folder) as a set of file attributes. Elements such as the file's name, its security information, and even its data, are all file attributes. Each attribute is identified by an attribute type code and, optionally, an attribute name.
When a file's attributes can fit within the MFT file record, they are called resident attributes. For example, information such as filename and time stamp are always included in the MFT file record. When all of the information for a file is too large to fit in the MFT file record, some of its attributes are nonresident. The nonresident attributes are allocated one or more clusters of disk space elsewhere in the volume. NTFS creates the Attribute List attribute to describe the location of all of the attribute records.
Table 5-3 lists all of the file attributes currently defined by the NTFS file system. This list is extensible, meaning that other file attributes can be defined in the future.
Table 5-3 File Attributes Defined by NTFS
Attribute Type
| Description
| Standard Information | Includes information such as timestamp and link count. | Attribute List | Lists the location of all attribute records that do not fit in the MFT record. | File Name | A repeatable attribute for both long and short file names. The long name of the file can be up to 255 Unicode characters. The short name is the 8.3, case-insensitive name for the file. Additional names, or hard links, required by POSIX can be included as additional file name attributes. | Security Descriptor | Describes who owns the file and who can access it. | Data | Contains file data. NTFS allows multiple data attributes per file. Each file typically has one unnamed data attribute. A file can also have one or more named data attributes, each using a particular syntax. | Object ID | A volume-unique file identifier. Used by the distributed link tracking service. Not all files have object identifiers. | Logged Tool Stream | Similar to a data stream, but operations are logged to the NTFS log file just like NTFS metadata changes. This is used by EFS. | Reparse Point | Used for volume mount points. They are also used by Installable File System (IFS) filter drivers to mark certain files as special to that driver. | Index Root | Used to implement folders and other indexes. | Index Allocation | Used to implement folders and other indexes. | Bitmap | Used to implement folders and other indexes. | Volume Information | Used only in the $Volume system file. Contains the volume version. | Volume Name | Used only in the $Volume system file. Contains the volume label. |
NTFS System Files
NTFS includes several system files, all of which are hidden from view on the NTFS volume. A system file is one used by the file system to store its metadata and to implement the file system. System files are placed on the volume by the Format utility.
Table 5-4 Metadata Stored in the Master File Table
System File | File Name
| MFT Record
| Purpose of the File
| Master file table | $Mft | 0 | Contains one base file record for each file and folder on an NTFS volume. If the allocation information for a file or folder is too large to fit within a single record, other file records are allocated as well. | Master file table 2 | $MftMirr | 1 | A duplicate image of the first four records of the MFT. This file guarantees access to the MFT in case of a single-sector failure. | Log file | $LogFile | 2 | Contains a list of transaction steps used for NTFS recoverability. Log file size depends on the volume size and can be as large as 4 MB. It is used by Windows NT/2000 to restore consistency to NTFS after a system failure. | Volume | $Volume | 3 | Contains information about the volume, such as the volume label and the volume version. | Attribute definitions | $AttrDef | 4 | A table of attribute names, numbers, and descriptions. | Root file name index | $ | 5 | The root folder. | Cluster bitmap | $Bitmap | 6 | A representation of the volume showing which clusters are in use. | Boot sector | $Boot | 7 | Includes the BPB used to mount the volume and additional bootstrap loader code used if the volume is bootable. | Bad cluster file | $BadClus | 8 | Contains bad clusters for the volume. | Security file | $Secure | 9 | Contains unique security descriptors for all files within a volume. | Upcase table | $Upcase | 10 | Converts lowercase characters to matching Unicode uppercase characters. | NTFS extension file | $Extend | 11 | Used for various optional extensions such as quotas, reparse point data, and object identifiers. | | | 12-15 | Reserved for future use. |
[ 本帖最后由 甜橙 于 2007-11-3 16:17 编辑 ] |
|