NTFS详细概述

NTFS 是 Windows NT 操作环境和 Windows NT 高级服务器网络操作系统环境的文件系统。NTFS 的目标是提供:可靠性,通过可恢复能力(事件跟踪)和热定位的容错特征实现;增加功能性的一个平台;对 POSIX 需求的支持;消除 FAT 和 HPFS 文件系统中的限制。

NTFS 提供长文件名、数据保护和恢复,并通过目录和文件许可实现安全性。NTFS 支持大硬盘和在多个硬盘上存储文件(称为跨越分区)。例如,一个大公司的数据库可能大得必须跨越不同的硬盘。NTFS 提供内置安全性特征,它控制文件的隶属关系和访问。从 DOS 或其他操作系统上不能直接访问 NTFS 分区上的文件。如果要在DOS下读写NTFS分区文件的话可以借助第三方软件;至今(2007年5月)在Linux下一般只能读取而不能写入NTFS分区文件(北京中科红旗软件技术有限公司在2007年下半年新发行的红旗Linux桌面版6.0已经可以在Linux下写入)。这是Windows NT 安全性系统的一部分,但是,只有在使用 NTFS 时才是这样。

NTFS 允许文件名的长度可达 256 个字符。虽然 DOS 用户不能访问 NTFS 分区,但是 NTFS 文件可以拷贝到 DOS 分区。每个 NTFS 文件包含一个可被 DOS 文件名格式认可的 DOS 可读文件名。这个文件名是 NTFS 从长文件名的开始字符中产生的。

NTFS安全特性概要

Win 2000采用了更新版本的NTFS文件系统NTFS 5.0,它的推出使得用户不但可以像Win 9X那样方便快捷地操作和管理计算机,同时也可享受到NTFS所带来的系统安全性。

NTFS的特点

·NTFS可以支持的分区(如果采用动态磁盘则称为卷)大小可以达到2TB。而Win 2000中的FAT32支持分区的大小为32GB。 
·NTFS是一个可恢复的文件系统。在NTFS分区上用户很少需要运行磁盘修复程序。NTFS通过使用标准的事物处理日志和恢复技术来保证分区的一致性。发生系统失败事件时,NTFS使用日志文件和检查点信息自动恢复文件系统的一致性。 
·NTFS支持对分区、文件夹和文件的压缩。任何基于Windows的应用程序对NTFS分区上的压缩文件进行读写时不需要事先由其他程序进行解压缩,当对文件进行读取时,文件将自动进行解压缩;文件关闭或保存时会自动对文件进行压缩。 
·NTFS采用了更小的簇,可以更有效率地管理磁盘空间。在Win 2000的FAT32文件系统的情况下,分区大小在2GB~8GB时簇的大小为4KB;分区大小在8GB~16GB时簇的大小为8KB;分区大小在16GB~32GB时,簇的大小则达到了16KB。而Win 2000的NTFS文件系统,当分区的大小在2GB以下时,簇的大小都比相应的FAT32簇小;当分区的大小在2GB以上时(2GB~2TB),簇的大小都为4KB。相比之下,NTFS可以比FAT32更有效地管理磁盘空间,大限度地避免了磁盘空间的浪费。 
·在NTFS分区上,可以为共享资源、文件夹以及文件设置访问许可权限。许可的设置包括两方面的内容:一是允许哪些组或用户对文件夹、文件和共享资源进行访问;二是获得访问许可的组或用户可以进行什么级别的访问。访问许可权限的设置不但适用于本地计算机的用户,同样也应用于通过网络的共享文件夹对文件进行访问的网络用户。与FAT32文件系统下对文件夹或文件进行访问相比,安全性要高得多。另外,在采用NTFS格式的Win 2000中,应用审核策略可以对文件夹、文件以及活动目录对象进行审核,审核结果记录在安全日志中,通过安全日志就可以查看哪些组或用户对文件夹、文件或活动目录对象进行了什么级别的操作,从而发现系统可能面临的非法访问,通过采取相应的措施,将这种安全隐患减到低。这些在FAT32文件系统下,是不能实现的。 
·在Win 2000的NTFS文件系统下可以进行磁盘配额管理。磁盘配额就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用大配额范围内的磁盘空间。设置磁盘配额后,可以对每一个用户的磁盘使用情况进行跟踪和控制,通过监测可以标识出超过配额报警阈值和配额限制的用户,从而采取相应的措施。磁盘配额管理功能的提供,使得管理员可以方便合理地为用户分配存储资源,避免由于磁盘空间使用的失控可能造成的系统崩溃,提高了系统的安全性。 
·NTFS使用一个“变更”日志来跟踪记录文件所发生的变更。 
·还有诸如加密文件数据等等,和系统服务相关的东西不少。

NTFS的优点

1.具备错误预警的文件系统 
在NTFS分区中,开始的16个扇区是分区引导扇区,其中保存着分区引导代码,接着就是主文件表(Master File Table,以下简称MFT),但如果它所在的磁盘扇区恰好出现损坏,NTFS文件系统会比较智能地将MFT换到硬盘的其他扇区,保证了文件系统的正常使用,也就是保证了Windows的正常运行。而以前的FAT16和FAT32的FAT(文件分配表)则只能固定在分区引导扇区的后面,一旦遇到扇区损坏,那么整个文件系统就要瘫痪。

但这种智能移动MFT的做法当然并非十全十美,如果分区引导代码中指向MFT的部分出现错误,那么NTFS文件系统便会不知道到哪里寻找MFT,从而会报告“磁盘没有格式化”这样的错误信息。为了避免这样的问题发生,分区引导代码中会包含一段校验程序,专门负责侦错。

2.文件读取速度更高效 
恐怕很多人都听说NTFS文件系统在安全性方面有很多新功能,但你可否知道:NTFS在文件处理速度上也比FAT32大有提升呢?

对DOS略知一二的读者一定熟悉文件的各种属性:只读、隐藏、系统等。在NTFS文件系统中,这些属性都还存在,但有了很大不同。在这里,一切东西都是一种属性,就连文件内容也是一种属性。这些属性的列表不是固定的,可以随时增加,这也就是为什么你会在NTFS分区上看到文件有更多的属性.

NTFS文件系统中的文件属性可以分成两种:常驻属性和非常驻属性,常驻属性直接保存在MFT中,像文件名和相关时间信息(例如创建时间、修改时间等)永远属于常驻属性,非常驻属性则保存在MFT之外,但会使用一种复杂的索引方式来进行指示。如果文件或文件夹小于1500字节(其实我们的电脑中有相当多这样大小的文件或文件夹),那么它们的所有属性,包括内容都会常驻在MFT中,而MFT是Windows一启动就会载入到内存中的,这样当你查看这些文件或文件夹时,其实它们的内容早已在缓存中了,自然大大提高了文件和文件夹的访问速度。

3.磁盘自我修复功能 
NTFS利用一种“自我疗伤”的系统,可以对硬盘上的逻辑错误和物理错误进行自动侦测和修复。在FAT16和FAT32时代,我们需要借助Scandisk这个程序来标记磁盘上的坏扇区,但当发现错误时,数据往往已经被写在了坏的扇区上了,损失已经造成。

NTFS文件系统则不然,每次读写时,它都会检查扇区正确与否。当读取时发现错误,NTFS会报告这个错误;当向磁盘写文件时发现错误,NTFS将会十分智能地换一个完好位置存储数据,操作不会受到任何影响。在这两种情况下,NTFS都会在坏扇区上作标记,以防今后被使用。这种工作模式可以使磁盘错误可以较早地被发现,避免灾难性的事故发生。

有些人发现当把磁盘转换为NTFS文件系统后,用磁盘扫描程序就很难发现磁盘错误了。经过前面的介绍,你知道这是为什么了吗?

4.“防灾赈灾”的事件日志功能 
在NTFS文件系统中,任何操作都可以被看成是一个“事件”。比如将一个文件从C盘复制到D盘,整个复制过程就是一个事件。事件日志一直监督着整个操作,当它在目标地——D盘发现了完整文件,就会记录下一个“已完成”的标记。假如复制中途断电,事件日志中就不会记录“已完成”,NTFS可以在来电后重新完成刚才的事件。事件日志的作用不在于它能挽回损失,而在于它监督所有事件,从而让系统永远知道完成了哪些任务,那些任务还没有完成,保证系统不会因为断电等突发事件发生紊乱,大程度降低了破坏性。

5.我是否需要哪些附加的功能? 
其实,NTFS还提供了磁盘压缩、数据加密、磁盘配额(在“我的电脑”中右击分区并并行“属性”,进入“配额”选项卡即可设置)、动态磁盘管理等功能,这些功能在很多报刊杂志上介绍的比较多了,这里不再详细介绍。

NTFS提供了为不同用户设置不同访问控制、隐私和安全管理功能。如果你的系统处于一个单机环境,比如家用电脑,那么这些功能对你意义不是很大。

NTFS使用注意事项

   NTFS是微软Windows NT内核的系列操作系统支持的、一个特别为网络和磁盘配额、文件加密等管理安全特性设计的磁盘格式。除了在局域网安装了NT系列的用户们使用NTFS外,随着NT内核的桌面系统Windows2000和XP的普及,很多个人用户也开始把自己的分区格式化为NTFS。

  在一般情况下,NTFS的格式不能被Windows9X识别,而且在安装、操作方面也有差异,所以个人用户在使用这种磁盘格式的时候,必须留意下面的注意事项:

  一、NT内核的系统应始终使用NTFS 吗?

  NTFS是微软推荐在NT系列上使用的文件系统,但是,会有一些特殊的原因使用其他文件系统。如果计划用其他操作系统(包括 MS-DOS)访问文件,则应把引导的分区,即C盘选择格式为 FAT(包括FAT32)文件系统。如果使用的是NTFS文件系统并要与Windows NT进行双重引导,那么在继续Windows 2000或XP的安装之前,必须要为Windows NT安装SP4或更高版本的补丁。

  二、转化NTFS和其他分区格式的技巧

  一台机器用PQ7把一个分区由NTFS转换成FAT32格式,完成后发现该盘中的中文名的文件夹全部变成问号,打不开了。此时想转回来时发现提示磁盘错误,用Windows的磁盘扫描和DOS的CHKDSK检查后仍无法转换,里面有其下载的几百M的文件,现在已经搞的面目全非了。

  其实,如果NTFS的分区容量很大且内有大量的数据存在的话,用直接转换的方式不仅缓慢,而且是很危险的——因为在每一个步骤里,转换的工具程序都要先读取扇区信息、拷贝到临时目录、转化格式再从临时目录读数据重新写入转换好的空间,再校验……这样的操作其实和低级格式化硬盘或是刷新主板的BIOS差不多危险,一旦发生掉电或是瞬间的数据量过大传输溢出缓冲区导致的死机,重新开机后可能就会丢失分区的所有信息,或是破坏引导区数据甚至是损坏硬盘。

  如果硬盘其他分区有足够的空间,用拷贝后删除文件再转化的方法,会事半功倍。具体的操作就是先在其他分区建立一个目录,然后转到你的NTFS分区,选定全部文件,用复制粘贴的方法进行转移数据。然后把NTFS分区的数据清空,再进行转化格式就快很多,也安全得多了;从FAT的格式转换到NTFS也是一样道理。这种拷贝,比直接转换分区格式读读写写、又校验数据的那种繁琐过程快很多,可以在转换完成后,把数据拷贝回该分区。

另外,建议在清空数据后,利用GHOST镜像NTFS或FAT格式的空白分区,得到一个备份文件,以后如果再要转换分区格式利用它来进行就更快。

  三、虚拟内存(页面文件)与NTFS的卷

  现在很多人装了双硬盘系统甚至是简单的RAID磁盘阵列,在使用这种结构的系统同时是需要NTFS支持卷功能的,此时,应该尽量避免页面文件和系统文件在同一分区上,也不要在同一物理磁盘驱动器的不同分区中放置多个页面文件。特别注意避免将页面文件放入容错驱动器,例如镜像卷或 RAID-5 卷,因为页面文件不需要容错,而且一些容错系统将数据写到多个位置,会导致非常缓慢的数据写操作。

  四、如果使用了虚拟机或是磁盘压缩,不适宜使用NTFS格式

  使用虚拟机时,在NTFS分区引导的机器上使用光盘引导后,在装操作系统的时候,将会出现以下提示:

  Please wait while Setup initializes. 
Scanning system registry… 
Cannot create a temporary directory. 
If you have HPFS or NTFS installed on your hard drive, you will need to create an MS-DOS boot partition to set up Windows.

  因为虚拟机出于兼容的考虑,只内置了常用的硬件和软件支持,对NTFS格式的支持目前还不是很好。如果你使用Windows9X加补丁的方式来读写NTFS分区的话,也可能会导致某些长文件名或是中文名的文件结构被破坏;在使用GHOST备份和恢复的时候也可能会出现莫名其妙的错误。所以,上NTFS还是用NT内核的系列视窗系统好。

  另外,注意压缩过的分区不能转化为NTFS。其实压缩磁盘分区变相增大容量是以系统速度的极大牺牲为代价的;而且还会给以后的系统维护、转换分区格式、升级操作系统等等带来很大麻烦。除非是完全出于备份数据的考虑,其他的应用建议不要使用Windows的分区磁盘压缩功能。

  推荐阅读:共享文件夹怎么加密