• 各文件系统对单个文件大小的限制


    A.FAT16(最大分区2GB,最大文件2GB ,最大容量)

    在说明FAT16文件系统之前,我们必须清楚FAT是什么?FAT(File Allocation Table)是“文件分配表”的意思。顾名思义,就是用来记录文件所在位置的表格,它对于硬盘的使用是非常重要的,假若丢失文件分配表,那么硬盘上的数据就会因无法定位而不能使用了。不同的操作系统所使用的文件系统不尽相同,在个人计算机上常用的操作系统中,MS-DOS 6.x及以下版本使用FAT16;OS/2使用HPFS;Windows NT则使用NTFS;而MS-DOS 7.10及ROM-DOS 7.10同时提供了FAT16及FAT32供用户选用。其中我们接触最多的是FAT16、FAT32文件系统。 
      FAT16文件系统 
      FAT16使用了16位的空间来表示每个扇区(Sector)配置文件的情形,故称之为FAT16。 
      FAT16由于受到先天的限制,因此每超过一定容量的分区之后,它所使用的簇(Cluster)大小就必须扩增,以适应更大的磁盘空间。所谓簇就是磁盘空间的配置单位,就象图书馆内一格一格的书架一样。每个要存到磁盘的文件都必须配置足够数量的簇,才能存放到磁盘中。FAT16各分区与簇大小的关系如下表: 
      分区大小 FAT16簇大小 
      16MB-127MB 2KB 
      128MB-255MB 4KB 
      256MB-511MB 8KB 
      512MB-1023MB 16KB 
      1024MB-2047MB 32KB 
      如果你在一个1000MB的分区中存放50KB的文件,由于该分区簇的大小为16KB,因此它要用到4个簇才行。而如果是一个1KB的文件,它也必须使用一个簇来存放。那么每个簇中剩下的空间可否拿来使用呢?答案是不行的,所以在使用磁盘时,无形中都会或多或少损失一些磁盘空间。 
      由上可知,FAT16文件系统有两个最大的缺点: 
      (1)磁盘分区最大只能到2GB。当前只要你添购计算机的话,想必其中的硬盘大小必定至少有2GB,而3.2GB、4.3GB以上的硬盘比比皆是,且物美价廉。FAT16文件系统已不能适应当前这种大容量的硬盘,必须被迫分区成几个磁盘空间。而分区磁盘的大小又牵扯出簇的问题来,可谓影响颇大。 
      (2)使用簇的大小不恰当。试想,如果一个只有1KB大小的文件放置在一个1000MB的磁盘分区中,它所占的空间并不是1KB,而是16KB,足足浪费了15KB!当前流行的HTML文件,其大小几乎多为1KB、2KB,而制作一个网站往往用到数十个HTML文件。如果你的硬盘中有100个这种小文件的话,你浪费的磁盘空间可从700KB(511MB的分区),到3.1MB(2047MB的分区)。 
      以上这两个问题常常使得用户在“分多大的分区,才能节省空间,同时又可使硬盘的使用更加方便有效”的抉择中徘徊不定。 
      在Dos2.0的使用过程中,对更大的磁盘的管理能力的需求已经出现了,所以在Dos3.0中,微软推出了新的文件系统Fat16。除了采用了16位字长的分区表之外,Fat1*****Fat12在其他地方都非常的相似。实际上,随着字长增加4位,可以使用的簇的总数增加到了65546。在总的簇数在4096之下的时候,应用的还是Fat12的分区表,当实际需要超过4096簇的时候,应用的是Fat16的分区表。刚推出的Fat16文件系统管理磁盘的能力实际上是32M。这在当时是看来是足够大的。1987年,硬盘的发展推动了文件系统的发展,Dos4.0之后的Fat16可以管理128M的磁盘。然后这个数字不断的发展,一直到2G。在整整的10年中,2G的磁盘管理能力都是大大的多于了实际的需要。需要指出的是,在windows95系统中,采用了一种比较独特的技术,叫做VFat来解决长文件名等问题。FAT16分区格式存在严重的缺点:大容量磁盘利用效率低。在微软的DOS和Windows系列中,磁盘文件的分配以簇为单位,一个簇只分配给一个文件使用,不管这个文件占用整个簇容量的多少。这样,即使一个很小的文件也要占用一个簇,剩余的簇空间便全部闲置,造成磁盘空间的浪费。由于分区表容量的限制,FAT16分区创建的越大,磁盘上每个簇的容量也越大,从而造成的浪费也越大。
      使用 FAT16 文件系统最大化分区大小
      概要
      Microsoft MS-DOS 4.0 版及更新版本允许 FDISK 给硬盘划分最大为 4 千兆字节 (GB) 的分区。然而,MS-DOS 文件分配表 (FAT) 文件系统仅支持每分区为 2 GB 大小。基于这一事实,大小在 2 到 4 GB 的硬盘必须划分为多个分区,而且每一个分区都不能超过 2 GB。 
      注意:Windows 95 OEM Service Release 版本 2 和更新版本支持大小超过 2 GB 的使用 FAT32 文件系统的驱动器。有关 FAT32 文件系统的更多信息,请参见下面的 Microsoft 知识库文章: 
      文章 ID: 154997 (http://support.microsoft.com/kb/154997/EN-US/)
      标题:FAT32 文件系统说明 
      更多信息
      FAT 文件系统支持的最大簇数目和簇的最大大小决定了 2-GB 这一分区限制。FAT 文件系统限于 65,525 个簇。簇大小必须为 2 的次方而且小于 65,536 字节,结果是最大簇大小为 32,768 字节 (32K)。将最大簇数 (65,525) 乘以最大簇大小 (32,768) 等于 2 GB。 
      注意,为用 FDISK 对硬盘进行分区,硬盘驱动器必须受计算机 ROM BIOS API 的支持,后者有 1024 柱面这一限制。 
      因为每个簇 32K 会浪费宝贵的硬盘空间,所以 FAT 文件系统并非总是最好的硬盘管理方案。Microsoft Windows NT 使用 NT 文件系统 (NTFS),它使用另一不同的文件/簇方案。Microsoft OS/2 版本 1.3 支持 HPFS,后者也使用了一种更保守的分配磁盘资源的方式。 
      注意:Microsoft Windows NT 也支持 FAT 驱动器。Windows NT 3.51 支持最大 4 GB 大小的 FAT 驱动器。MS-DOS 或 Windows 不支持 2 GB 至 4 GB 大小的 FAT 驱动器。换句话说,如果希望从 MS-DOS 或 Windows 95/98 以及 Windows NT 都能访问 FAT 驱动器,那么 FAT 驱动器不能够大于 2 GB。如果只从 Windows NT 上访问 FAT 驱动器,则驱动器大小可以在 2 GB 到 4 GB 之间。

    B.FAT32(最大分区32GB,最大容量2TB,最大文件32G )

    FAT32实际上是文件分区表采取的一种形式,它是相对于FAT16而言的。众所周知,Dos和Windows95采用的都是FAT16格式。至于FAT32,准确地说是在Windows95OSR2中第一次出现的,之所以没有宣传是因为当时该文件系统还不够成熟,尚处于试探阶段。那么为什么一定要推出FAT32呢?这主要是由其自身的优越性决定的。
      首先,它可以大大地节约磁盘空间。文件在磁盘上是以簇的方式存放的,簇里存放了一个文件就不能再存放另外的文件。假如一个磁盘的分区大小为512MB,基于FAT16的系统的簇的大小为8KB,而FAT32系统的簇的大小仅是4KB,那么,现在我们存放一个3KB的文件,FAT16系统就会有5KB的空间被浪费,而FAT32的浪费则会少一些。如果分区达到1GB,FAT16的簇为16KB,而FAT32还是4KB,节省的也就更多了。
      在推出FAT32文件系统之前,通常PC机使用的文件系统是FAT16。像基于MS-DOS,Win 95等系统都采用了FAT16文件系统。在Win 9X下,FAT16支持的分区最大为2GB。我们知道计算机将信息保存在硬盘上称为“簇”的区域内。使用的簇越小,保存信息的效率就越高。在FAT16的情况下,分区越大簇就相应的要增大,存储效率就越低,势必造成存储空间的浪费。并且随着计算机硬件和应用的不断提高,FAT16文件系统已不能很好地适应系统的要求。在这种情况下,推出了增强的文件系统FAT32。同FAT16相比,FAT32主要具有以下特点: 
      1. 同FAT16相比FAT32最大的优点是可以支持的磁盘大小达到2TB(2048GB),但是不能支持小于512MB的分区。基于FAT32的Win 2000可以支持分区最大为32GB;而基于 FAT16的Win 2000支持的分区最大为4GB。 
      2. 由于采用了更小的簇,FAT32文件系统可以更有效率地保存信息。如两个分区大小都为2GB,一个分区采用了FAT16文件系统,另一个分区采用了FAT32文件系统。采用FAT16的分区的簇大小为32KB,而FAT32分区的簇只有4KB的大小。这样FAT32就比FAT16的存储效率要高很多,通常情况下可以提高15%。 
      3. FAT32文件系统可以重新定位根目录和使用FAT的备份副本。另外FAT32分区的启动记录被包含在一个含有关键数据的结构中,减少了计算机系统崩溃的可能性。
      稍作补充:
      FAT32 功能
      与以前的 FAT 文件系统实现相比,FAT32 提供了以下增强功能: • FAT32 支持最大为 2 TB 的驱动器。 
      注意:Microsoft Windows 2000 仅能支持最大为 32 GB 的 FAT32 分区。 
      • FAT32 可以更高效地使用空间。FAT32 使用较小的簇(即,对于大小在 8 GB 以内的驱动器,使用 4 KB 的簇),这与大的 FAT 或 FAT16 驱动器相比,可将磁盘空间的使用率提高 10% 到 15%。 
      • FAT32 更稳定可靠。FAT32 可以重新定位根文件夹,而且它使用文件分配表的备份副本,而不是使用默认副本。此外,FAT32 驱动器上的引导记录也得到扩展,包括了关键数据结构的备份副本。因此,与现有的 FAT16 驱动器相比,FAT32 驱动器不容易受单点故障的影响。 
      • FAT32 更灵活。FAT32 驱动器上的根文件夹是普通的簇链,因此它可以位于驱动器上的任何位置。以前对根文件夹数量的限制不复存在。此外,可以禁用文件分配表镜像,这样就可以让文件分配表的副本而不是让第一个文件分配表处于活动状态。这些功能允许您动态重调 FAT32 分区的大小。不过要注意,虽然 FAT32 的设计允许这一功能,但 Microsoft 将不在初始版本中实现此功能。 
      FAT32 兼容性注意事项
      为了与现有程序、网络和设备驱动程序保持最大程度的兼容性,FAT32 尽可能不改动现有的 Windows 体系结构、内部数据结构、应用程序编程接口 (API) 和磁盘上的格式。然而,因为现在需要 4 字节来存储簇值,所以许多内部的和磁盘上的数据结构以及发布的 API 都作了修改或扩展。某些情况下,现有的 API 无法在 FAT32 驱动器上运行。大多数程序不会受这些更改的影响。现有工具和驱动程序在 FAT32 驱动器上应能够继续正常运行。不过,MS-DOS 块设备驱动程序(例如 Aspidisk.sys)和磁盘工具需要经过修改才能支持 FAT32 驱动器。 
      所有 Microsoft 捆绑磁盘工具(格式化、Fdisk、碎片整理、基于 MS-DOS 和 Windows 的磁盘扫描)已经过修改,可以在 FAT32 中正常运行。此外,Microsoft 正在与一些主要设备驱动程序和磁盘工具厂商协作,帮助他们修改其产品以支持 FAT32。
      注意:不能使用 Microsoft DriveSpace 或 DriveSpace 3 压缩 FAT32 卷。 
      FAT32 性能
      转换到 FAT32 文件系统是您可以在基于 Windows 98 的计算机上实现的最大的一种性能增强。 
      双启动计算机
      目前,在 Microsoft 操作系统中,只有 Windows 95 OSR2、Windows 98、Windows 2000 和 Windows Me 可以访问 FAT32 卷。MS-DOS、Windows 95 原始版和 Windows NT 4.0 不识别 FAT32 分区,它们无法从 FAT32 卷启动。此外,如果使用其他操作系统(例如,Windows 95 或 MS-DOS 启动盘)启动计算机,也无法正确访问 FAT32 卷。 
      Windows 95 OSR2 和 Windows 98 可以在实模式下启动(例如为了运行游戏)并可以使用 FAT32 卷。 
      创建 FAT32 驱动器
      在 Windows 95 OSR2、Windows 98 和 Windows Me 中,如果在大小超过 512 兆字节 (MB) 的硬盘上运行 Fdisk 工具,Fdisk 将提示您是否启用大磁盘支持。如果回答“是”(启用大磁盘支持),您创建的任何大于 512 MB 的分区都将被标记为 FAT32 分区。 
      Windows 98 和 Windows Me 中还带有一种 FAT32 转换工具,您可以使用该工具将现有驱动器转换为 FAT32 文件系统。要使用该转换工具,请按照下列步骤操作: 1. 单击开始,依次指向程序、附件、系统工具,然后单击驱动器转换器 (FAT32)。 
      2. 单击下一步。 
      3. 单击希望转换为 FAT32 文件系统的驱动器,然后单击下一步。 
      4. 按照屏幕上的说明操作。 
      支持范围
      Microsoft 将支持 FAT32 文件系统的功能,以实现无错读取和在实模式或保护模式下保存文件。Microsoft 支持 Windows 95 中所带的实模式和保护模式工具。
      对于旧式(较早的)程序,如果它们无法在 FAT32 卷上安装,或者无法正确保存文件或读取文件,则您必须与软件包的生产厂商联系。 
      注意:虽然 FAT32 文件系统所支持的硬盘容量最高可以达到 2 TB,但有些硬盘可能会因为计算机基本输入/输出系统 (BIOS) INT13 接口的限制而无法包含大于 7.8 GB 的可启动分区。请与硬件制造商联系,以确定您计算机的 BIOS 是否支持更新后的 INT13 扩展。
      http://support.microsoft.com/default.aspx?scid=kb;zh-cn;184006
      Windows 操作系统使用 FAT32 文件系统时存在以下限制: • 簇不能是 64 千字节 (KB) 或更大。如果簇为 64 KB 或更大,有些程序(例如安装程序)在计算磁盘空间时可能会出错。 
      • 卷必须包含至少 65,527 个簇,才能使用 FAT32 文件系统。您不能增加使用 FAT32 文件系统的卷上的簇大小,以致于该卷的最终簇数小于 65,527。 
      • 在使用 FAT32 文件系统的卷上,簇最多是 268,435,445 个。对于文件分配表 (FAT) 的空间,每簇最大为 32 KB,据此计算出的最大磁盘大小大约为 8 太字节 (TB)。 
      • Microsoft Windows 95 和 Microsoft Windows 98 附带的“磁盘扫描”工具是 16 位程序。这样的程序有一个内存块,该内存块的最大分配大小等于 16 MB 减去 64 KB。因此,Windows 95 或 Windows 98 的“磁盘扫描”工具无法处理使用 FAT32 文件系统(其 FAT 大小大于 16 MB 和 64 KB 之差)的卷。使用 FAT32 文件系统的卷上的 FAT 项使用 4 字节,因此 ScanDisk 无法处理使用定义的簇数大于 4,177,920(包括两个保留的簇)的 FAT32 文件系统的卷上的 FAT。将 FAT 本身包括在内,按每簇最大 32 KB 计算,卷大小为 127.53 吉字节 (GB)。 
      • 您不能减少使用 FAT32 文件系统的卷上的簇大小,以致于 FAT 的最终大小大于 16 MB 与 64 KB 之差。 
      • 在 Windows 2000 中您无法使用 FAT32 文件系统格式化大于 32 GB 的卷。Windows 2000 FastFAT 驱动程序可以安装和支持使用 FAT32 文件系统且大于 32 GB的卷(受到其他限制),但是您不能使用格式化工具创建一个这样的卷。这种现象是设计使然。如果需要创建大于 32 GB 的卷,请改用 NTFS 文件系统。 
      备注:在尝试格式化大于 32 GB 的 FAT32 分区时,在进程快结束时格式化会失败,并出现以下错误:
      Logical Disk Manager:Volume size too big.
      http://support.microsoft.com/default.aspx?scid=kb;zh-cn;314463
      Windows XP 中 FAT32 文件系统的限制
      当您在 Windows XP 中使用 FAT32 文件系统时,请注意下列限制: • 簇不能等于或大于 64 KB。如果簇大小为 64 KB 或更大,则有些程序(例如安装程序)可能会不正确地计算磁盘空间。 
      • FAT32 卷必须至少包含 65,527 个簇。您不能增加使用 FAT32 文件系统的卷上的簇大小,这样会导致卷上的簇数少于 65,527 个。 
      • 如果考虑到以下可变因素,则最大磁盘大小大约为 8 TB:一个 FAT32 卷上允许的最大簇数为 268,435,445,每个簇最大为 32 KB,另外还有文件分配表 (FAT) 所需的空间。 
      • 您不能减少 FAT32 卷上的簇大小,这样会导致 FAT 的大小大于 16 MB 减去 64 KB。 
      • 在 Windows XP 安装过程中,您不能使用 FAT32 文件系统格式化大于 32 GB 的卷。Windows XP 可以装入和支持大于 32 GB 的 FAT32 卷(受到其他限制),但是您不能在安装期间使用 Format 工具创建大于 32 GB 的 FAT32 卷。如果您需要格式化大于 32 GB 的卷,请使用 NTFS 文件系统来格式化。另一种方法是从 Microsoft Windows 98 或 Microsoft Windows Millennium Edition (Me) 启动盘启动,然后使用该磁盘上包含的 Format 工具。 
      有关如何使用 Microsoft Windows 98 或 Microsoft Windows Millennium Edition (Me) 启动盘格式化硬盘的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章: 
      255867 如何使用 Fdisk 和 Format 工具对硬盘进行分区或重新分区 
      注意:当您在 Windows XP 安装过程中试图格式化大于 32GB 的 FAT32 分区时,在格式化过程快结束时操作将会失败,并且您可能会收到以下错误信息:
      Logical Disk Manager:Volume size too big. 
      • MS-DOS(Microsoft Windows 95 的原始版本)和 Microsoft Windows NT 4.0 及更低版本都不能识别 FAT32 分区,因此无法从 FAT32 卷启动。 
      • 您不能在 FAT32 分区上创建大于 (2^32)-1 字节(即 4 GB 减去 1 个字节)的文件。
      FAT32格式理论上可以支持128TB的磁盘,即簇的大小乘簇的数量32K*(2^32),但由于受到软硬件的限制和其他方面的原因,不可能达到理论值。

    C.NTFS(最大分区2TB,最大容量,最大文件2TB )

     NTFS (New Technology File System)是 Windows NT 操作环境和 Windows NT 高级服务器网络操作系统环境的文件系统。NTFS 的目标是提供:可靠性,通过可恢复能力(事件跟踪)和热定位的容错特征实现;增加功能性的一个平台;对 POSIX 需求的支持;消除 FAT 和 HPFS 文件系统中的限制。 
      NTFS 提供长文件名、数据保护和恢复,并通过目录和文件许可实现安全性。NTFS 支持大硬盘和在多个硬盘上存储文件(称为卷)。例如,一个大公司的数据库可能大得必须跨越不同的硬盘。NTFS 提供内置安全性特征,它控制文件的隶属关系和访问。从DOS 或其他操作系统上不能直接访问 NTFS 分区上的文件。如果要在DOS下读写NTFS分区文件的话可以借助第三方软件;现如今,Linux 系统上已可以使用 NTFS-3G 进行对 NTFS 分区的完美读写,不必担心数据丢失 
      Win 2000采用了更新版本的NTFS文件系统NTFS 5.0,它的推出使得用户不但可以像Win 9X那样方便快捷地操作和管理计算机,同时也可享受到NTFS所带来的系统安全性。 NTFS 允许文件名的长度可达 256 个字符。虽然 DOS 用户不能访问 NTFS 分区,但是 NTFS 文件可以拷贝到 DOS 分区。每个 NTFS 文件包含一个可被 DOS 文件名格式认可的 DOS 可读文件名。这个文件名是 NTFS 从长文件名的开始字符中产生的。
      convert命令将FAT32无损转成NTFS格式
      将FAT 卷转换成 NTFS。 CONVERT volume /FS:NTFS [/V] [/CvtArea:filename] [/NoSecurity] [/X] volume 指定驱动器号(后面跟一个冒号)、 装载点或卷名,但不能反过来无损操作。
      例如,将D盘转换为NTFS格式,则需命令 convert d:/fs: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文件系统下可以进行磁盘配额管理。磁盘配额就?****芾碓笨梢晕?没??苁褂玫拇排炭占浣?信涠钕拗疲?恳挥没е荒苁褂米畲笈涠罘段?诘拇排炭占洹I柚么排膛涠詈螅?梢远悦恳桓鲇没У拇排淌褂们榭鼋?懈?俸涂刂疲?ü?嗖饪梢员晔冻龀??涠畋ň?兄岛团涠钕拗频挠没В?佣?扇∠嘤Φ拇胧?4排膛涠罟芾砉δ艿奶峁??沟霉芾碓笨梢苑奖愫侠淼匚?没Х峙浯娲⒆试矗?苊庥捎诖排炭占涫褂玫氖Э乜赡茉斐傻南低潮览#?岣吡讼低车陌踩?浴?
      ·NTFS使用一个“变更”日志来跟踪记录文件所发生的变更。 
      ·还有诸如加密文件数据等等,和系统服务相关的东西不少。
    [编辑本段]NTFS的优点
      1.具备错误预警的文件系统 
      [3]在NTFS分区中,最开始的16个扇区是分区引导扇区,其中保存着分区引导代码,接着就是主文件表(Master File Table,以下简称MFT),但如果它所在的磁盘扇区恰好出现损坏,NTFS文件系统会比较智能地将MFT换到硬盘的其他扇区,保证了文件系统的正常使用,也就是保证了Windows的正常运行。而以前的FAT1*****FAT32的FAT(文件分配表)则只能固定在分区引导扇区的后面,一旦遇到扇区损坏,那么整个文件系统就要瘫痪。 
      但这种智能移动MFT的做法当然并非十全十美,如果分区引导代码中指向MFT的部分出现错误,那么NTFS文件系统便会不知道到哪里寻找MFT,从而会报告“磁盘没有格式化”这样的错误信息。为了避免这样的问题发生,分区引导代码中会包含一段校验程序,专门负责侦错。 
      2.文件读取速度更高效 
      恐怕很多人都听说NTFS文件系统在安全性方面有很多新功能,但你可否知道:NTFS在文件处理速度上也比FAT32大有提升呢? 
      对DOS略知一二的读者一定熟悉文件的各种属性:只读、隐藏、系统等。在NTFS文件系统中,这些属性都还存在,但有了很大不同。在这里,一切东西都是一种属性,就连文件内容也是一种属性。这些属性的列表不?****潭ǖ模?梢运媸痹黾樱?庖簿褪俏?裁茨慊嵩贜TFS分区上看到文件有更多的属性. 
      NTFS文件系统中的文件属性可以分成两种:常驻属性和非常驻属性,常驻属性直接保存在MFT中,像文件名和相关时间信息(例如创建时间、修改时间等)永远属于常驻属性,非常驻属性则保存在MFT之外,但会使用一种复杂的索引方式来进行指示。如果文件或文件夹小于1500字节(其实我们的电脑中有相当多这样大小的文件或文件夹),那么它们的所有属性,包括内容都会常驻在MFT中,而MFT是Windows一启动就会载入到内存中的,这样当你查看这些文件或文件夹时,其实它们的内容早已在缓存中了,自然大大提高了文件和文件夹的访问速度。 
      3.磁盘自我修复功能 
      NTFS利用一种“自我疗伤”的系统,可以对硬盘上的逻辑错误和物理错误进行自动侦测和修复。在FAT1*****FAT32时代,我们需要借助Scandisk这个程序来标记磁盘上的坏扇区,但当发现错误时,数据往往已经被写在了坏的扇区上了,损失已经造成。 
      NTFS文件系统则不然,每次读写时,它都会检查扇区正确与否。当读取时发现错误,NTFS会报告这个错误;当向磁盘写文件时发现错误,NTFS将会十分智能地换一个完好位置存储数据,操作不会受到任何影响。在这两种情况下,NTFS都会在坏扇区上作标记,以防今后被使用。这种工作模式可以使磁盘错误可以较早地被发现,避免灾难性的事故发生。 
      有些人发现当把磁盘转换为NTFS文件系统后,用磁盘扫描程序就很难发现磁盘错误了。经过前面的介绍,你知道这是为什么了吗? 
      4.“防灾赈灾”的事件日志功能 
      在NTFS文件系统中,任何操作都可以被看成是一个“事件”。比如将一个文件从C盘复制到D盘,整个复制过程就是一个事件。事件日志一直监督着整个操作,当它在目标地——D盘发现了完整文件,就会记录下一个“已完成”的标记。假如复制中途断电,事件日志中就不会记录“已完成”,NTFS可以在来电后重新完成刚才的事件。事件日志的作用不在于它能挽回损失,而在于它监督所有事件,从而让系统永远知道完成了哪些任务,那些任务还没有完成,保证系统不会因为断电等突发事件发生紊乱,最大程度降低了破坏性。 
      5.ntfs动态磁盘功能
      动态磁盘是从Windows 2000时*****始的新特性,Windows Server 2003继续使用了这个相当棒的特性。相比基本磁盘,它提供更加灵活的管理和使用特性。您可以在动态磁盘上实现数据的容错、高速的读写操作、相对随意的修改卷大小等操作,而不能在基本磁盘上实现。动态磁盘没有卷数量的限制,只要磁盘空间允许,您可以在动态磁盘中任意建立卷。动态磁盘,我们可以将数块磁盘中的空余磁盘空间扩展到同一个卷中来增大卷的容量。基本磁盘的读写速度由硬件决定,不可能在不额外消费的情况下提升磁盘效率。在动态磁盘上创建带区卷来同时对多块磁盘进行读写,显著提升磁盘效率。
      使用Windows XP 2000 2003等系统安装盘给硬盘分区时,往往发现不管硬盘大小,不管分区大小,最后总有8M的空间被剩余下来。这8M空间是用来转换成动态磁盘的。创建Raid时必须要有不小于8M的动态磁盘,所以Windows操作系统在进行分区时会自动留下8M的空间。
      基本磁盘不可容错,如果没有及时备份而遭遇磁盘失败,会有极大的损失。在动态磁盘上创建镜像卷,所有内容自动实时被镜像到镜像磁盘中,即使遇到磁盘失败也不必担心数据损失了。在动态磁盘上创建带有奇偶校验的带区卷,来保证提高性能的同时为磁盘添加容错性。
      动态磁盘提供了基本磁盘不具备的一些特性,例如创建可跨越多个磁盘的卷(跨区卷和带区卷)和创建具有容错能力的卷(镜像卷和 RAID-5 卷)的能力。动态磁盘上的所有卷都是动态卷。有五种类型的动态卷:简单卷、跨区卷、带区卷、镜像卷和 RAID-5 卷。镜像卷和 RAID-5 卷具有容错功能,仅在运行 Windows 2000 Server、Windows 2000 Advanced Server、Windows 2000 Datacenter Server 或 Windows Server 2003 操作系统的计算机上可用。不过,也可以通过运行 Windows XP Professional 的计算机在这些操作系统上远程创建镜像卷和 RAID-5 卷。不管动态磁盘使用主启动记录 (MBR) 还是 GUID 分区表 (GPT) 分区样式,都可以创建最多 2,000 个动态卷,但是动态卷的推荐值是 32 个或更少。
      6.我是否需要哪些附加的功能? 
      其实,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的分区磁盘压缩功能。 
      
    NTFS数据恢复

      NTFS大硬盘数据恢复修复过程:该硬盘为只有一个NTFS分区的数据盘,先在DOS下用扇区编辑软件查看LBA0--63扇区,结果发现分区表和63扇区都有错误,1—62扇区间有大量扇区被写上不明代码,87-102扇区不正常,先手工修复分区表,恢复63引导扇区,删除1—62扇区间的代码。87-102扇区之间暂不处理,到WINDOWS下检查,结果还是出现同样的提示,试用恢复软件1,可以看到目录结构,再试FINALDATE,这个软件此时太不尽人意;用恢复软件1选择某目录进行试恢复,结果28个试恢复文件只恢复2个,其余的全部为0字节,恢复工作陷入困境。再次对79-102扇区进行分析,79扇区面目全非,被严重篡改破坏,80-86扇区被清空,87-102扇区的内容也不正常。经过一番苦思冥想,对某些扇区进行备份后做清除,备份被放到1-62扇区之间,以备不测时改回原样。
    [编辑本段]在网站架设中因NTFS产生的故障和解决方式
      我们知道,在Windos 2000/2003 Server系统NTFS分区中的文件或文件夹,其默认权限主要?****芾碓钡认低秤没д嘶Ю刺砑拥摹6?没Х梦释?救词峭ü?癐nternet来宾帐户”来完成的。该账户在安装IIS后会自动创建,它并不会自动拥有NTFS中文件(夹)的访问权限。这样用户访问网站时,如果网站的内容不是放在默认的WWW中,那么则很可能因为“Internet来宾”无法操作而出现无法匿名访问等问题。[4]
      故障解决
      由此看来,问题的症结都是因为采用了NTFS分区格式。那么只要以后不采用NTFS格式,而使用传统的Fat32格式,问题不就是解决了吗?确实如此,如果使用Fat32格式,那么则不会再出现因为权限设置的问题导致网站无法访问。但是另外一个问题也随之而来,Fat32分区没有安全配置,无法对文件的操作权限进行管理,使得安全性和性能得到了下降。
      那么最佳的解决方法是什么呢?那就是给网站文件夹重新设置权限。打开网站文件所存放的目标文件夹属性窗口,切换到“安全”标签,在这里我们可以看到只有Administrators、System、Users等组显示在其中。此时,我们需要单击“添加”按钮,在打开的“选择用户或组”窗口中单击“高级”按钮,然后再单击“立即查找”命令,这样即会在“搜索结果”中显示搜索到的系统中所有的账户或组名称,我们只需要选中其中的“IUSR_计算机名称”账户(注意,下划线后面的内容和计算机名称相同),单击“确定”按钮返回权限设置窗口。这时候,我们就可以看到添加进来的“Internet来宾帐户”了。如果只是普通的静态页面,那么只需分配其“读取和运行”、“列出文件夹目标”等控制能力较低的权限即可;如果是动态asp类型的页面,需要互动的,那么则要拥有“修改”、“写入”等权限,分配好权限后单击“确定”按钮保存设置。
      这样的故障还会在一些动态网站中出现,一些基于asp、asp.net等语言下编写的动态网站,可以将asp文件转换成静态的html文件,以提高访问速度,并利于搜索引擎收录,但如果设置的权限级别较低,在转换时将会出错。

    4.ext3

    最大文件大小: 2TB

    最大文件极限: 仅受文件系统大小限制

    最大分区/文件系统大小: 4TB

    最大文件名长度: 255 字符

    缺省最小/最大块大小: 1024/4096 字节

    缺省inode分配: 每4096字节为1

    在强制FS检查前的最大装载: 20(可配置)

    5.gfs

    6.ext2

    最大文件大小: 1TB

    最大文件极限: 仅受文件系统大小限制

    最大分区/文件系统大小: 4TB

    最大文件名长度: 255 字符

    缺省最小/最大块大小: 1024/4096 字节

    缺省inode分配: 每4096字节为1

    在强制FS检查前的最大装载: 20(可配置)

    7.swap

  • 相关阅读:
    Nunit单元测试实践
    win2003下安装大程序的补丁
    内存内运行vs05
    vs03无法调试,需要加入debugger组的办法
    js原型类样例
    DOS下建立以日期文件夹备份的批处理
    转flex了,ria的应用看上去很适合企业级应用开发呢
    C#类中使用Session的正确方法
    C#修改connectionStrings的方法
    批量更改目录或者文件名称
  • 原文地址:https://www.cnblogs.com/jamesbd/p/3670523.html
Copyright © 2020-2023  润新知