NTFS稳定性和安全性
首页 > 业界动态
摘要:微软Windows操作系统中,有两种文件系统:FAT文件系统和NTFS文件系统。在本文中,我会详细介绍微软的NTFS文件系统。
微软做的很多事情都让他们受尽责备。但是它做的一件非常好的事情就是创建了一个强壮、高效而且可扩展的文件系统。NTFS(New Technology File System)文件系统最早出现在1993年的Windows NT操作系统中,它的出现大幅度地提高了微软原来的FAT文件系统的性能。NTFS是一个日志文件系统,这意味着除了向磁盘中写入信息,该文件系统还会为所发生的所有改变保留一份日志。这一功能让NTFS文件系统在发生错误的时候(比如系统崩溃或电源供应中断)更容易恢复,也让这一系统更加强壮。在这些情况下,NTFS能够很快恢复正常,而且不会丢失任何数据。在很少出错情况下,微软表示只要大概不到1%的概率才你需要运行CHKDSK修复程序来对磁盘卷进行维护。
NTFS另一个引人注目的特点,即良好的安全性是NTFS成为Windows网络中最常用的文件系统的最主要的原因。NTFS的安全系统非常强大,可以对文件系统中对象的访问权限(允许或禁止)做非常精细的设置。NTFS Master File Table (MFT)中包含了一个NTFS分区中所有文件的记录。每个MFT入口都有一个特殊的metadata标签,叫做SD(security descriptor,安全描述符),这个标签中包含了谁可以访问这个文件或文件夹的所有控制信息。每个SD标签都包含了一个用户列表,这个列表被称为Access Control List (ACL访问控制列表),只有包含在这个列表里的用户才被允许访问该对象。
请注意上面一段中出现的“metadata”一词。NTFS是一个元数据驱动的系统。事实上,当你第一次创建NTFS分区的时候,很多元数据文件就被创建了,每个元数据文件都帮助跟踪文件系统中某个特定的对象。我在上一段中提到每个NTFS分区都会有一个Master File Table,这个关联文件被命名为$MFT。事实上,NTFS创建了两个MFT文件。第一个是$MFT被存放在NTFS分区的开头。为了增强可靠性,NTFS分区还有一个名为$MFTMirr.的MTF文件。在Windows NT 4.0及其后的版本中,这个文件都被存放在NTFS分区的末尾。在Windows NT 3.51及以前的版本中,这个MFT镜像文件被存放在分区的中间。之所以设计这样一个文件是为了防止主MFT文件损坏造成损失,这也就是为什么NTFS要把这个镜像文件尽可能存放在远离主MFT文件的地方的原因了。
让我们回到元数据