磁盘与文件系统

更正 NTFS 卷上的磁盘空间问题 - Windows Server

· 52CE 我爱测

本文讨论如何检查 NTFS 文件系统的磁盘空间分配,以发现有问题的文件和文件夹,或查找基于 windows Server 2003 的 Microsoft 计算机中的卷损坏。 适用于: Windows Server 2003原始 KB 数: 814594 总结 NTFS 支持许多卷和文件级功能,这些功能可能会导致似乎丢失或报告不正确的可用磁盘空间。 例如,由于任何原因,NTFS 卷可能突然变得已满,管理员找不到原因或找到有问题的文件夹和文件。 如果发生大型

本文讨论如何检查 NTFS 文件系统的磁盘空间分配,以发现有问题的文件和文件夹,或查找基于 windows Server 2003 的 Microsoft 计算机中的卷损坏。

适用于: Windows Server 2003原始 KB 数: 814594

总结

NTFS 支持许多卷和文件级功能,这些功能可能会导致似乎丢失或报告不正确的可用磁盘空间。 例如,由于任何原因,NTFS 卷可能突然变得已满,管理员找不到原因或找到有问题的文件夹和文件。 如果发生大型文件或大量小文件被秘密复制的 NTFS 卷的恶意或未经授权的访问,则可能会出现这种情况。 然后,这些文件将删除或限制其 NTFS 权限。 发生导致卷损坏的计算机故障或停电后,也可能发生此行为。

由于以下任何原因,NTFS 卷的磁盘空间分配可能似乎未报告:

  • 对于存储在那里的平均大小文件,NTFS 卷的群集大小太大。
  • 文件属性或 NTFS 权限阻止 Windows 资源管理器或 Windows 命令提示符显示或访问文件或文件夹。
  • 文件夹路径超过 255 个字符。
  • 文件夹或文件包含无效或保留的文件名。
  • NTFS 图元文件(如主文件表)已增长,无法取消分配它们。
  • 文件或文件夹包含备用数据流。
  • NTFS 损坏会导致可用空间报告为正在使用中。
  • 其他 NTFS 功能可能会导致文件分配混乱。

以下信息可帮助你优化、修复或更好地了解 NTFS 卷如何使用磁盘空间。

群集大小过大

只有包含内部 NTFS 图元文件(如主文件表 (MFT)、文件夹索引等文件和文件夹才能占用磁盘空间。 这些文件和文件夹使用群集的倍数来使用所有文件空间分配。 群集是连续扇区集合。 群集大小由格式化卷时的分区大小决定。

创建文件时,它会根据初始文件大小使用最少的单个磁盘空间群集。 稍后将数据添加到文件中时,NTFS 会在群集大小的倍数中增加文件的分配。

若要确定当前的群集大小和卷统计信息,请从命令提示符运行只读 chkdsk 命令。 为此,请按照以下步骤操作:

  1. 单击“开始” ,再单击“运行” ,键入 cmd,然后单击“确定” 。

  2. 在命令提示符处,键入以下命令: chkdsk d:

    位置 d: 是要检查的驱动器的字母。

  3. 单击“确定”。

  4. 查看生成的输出。 例如:

4096543 KB 总磁盘空间。 <---格式化磁盘容量总数。 19901 文件中2906360 KB。 <---用户文件数据使用的空间。 1301 索引中的 6344 KB。 <--- NTFS 索引使用的空间。 坏扇区中为 0 KB。 <---空间输给了坏行业。 系统正在使用的 49379 KB。 <---包括 MFT 和其他 NTFS 图元文件。 日志文件占用的 22544 KB。 <--- NTFS 日志文件 - (可以使用 chkdsk /L:size 进行调整) 磁盘上提供1134460 KB。 <---可用磁盘空间

每个分配单元中的 4096 字节。 <---群集大小。 (4K) 1024135磁盘上的总分配单位。 <---磁盘上的群集总数。 283615磁盘上可用的分配单元。 <---可用的免费群集。

注意

将输出报告的每个值乘以千字节(KB)乘以 1024,以确定准确的字节计数。 例如:2906360 x 1024 = 2,976,112,640 字节。 可以使用此信息来确定磁盘空间的使用方式和默认群集大小。

若要确定这是最佳群集大小,必须确定磁盘上的浪费空间。 为此,请按照以下步骤操作:

  1. 单击“开始**”**,单击“我的计算机”,然后双击有问题的卷的驱动器号(例如 D),打开卷并显示根包含的文件夹和文件。

  2. 单击任何文件或文件夹,然后单击“编辑**”菜单上的**“全选”。

  3. 选中所有文件和文件夹后,右键单击任何文件或文件夹,单击“属性**”**,然后单击“常规”选项卡。

    “常规”选项卡显示整个卷上的文件和文件夹总数,并提供两个文件大小统计信息:SIZE 和 SIZE ON DISK。

如果不对卷中包含的任何文件或文件夹使用 NTFS 压缩,则 SIZE 和 SIZE ON DISK 之间的差异可能表示一些浪费的空间,因为群集大小大于必要。 你可能想要使用较小的群集大小,以便 SIZE ON DISK 值尽可能接近 SIZE 值。 SIZE ON DISK 与 SIZE 值之间的较大差异表明,对于存储在卷上的平均文件大小而言,默认群集大小太大。

只能通过重新格式化卷来更改使用的群集大小。 为此,请备份卷,然后使用 format 命令和 /a 开关来设置卷的格式,以指定适当的分配。 例如: format D: /a:2048 (此示例使用 2 KB 群集大小)。

注意

或者,可以启用 NTFS 压缩来重新获得由于群集大小不正确而丢失的空间。 但是,这可能会导致性能下降。

文件属性或 NTFS 权限

Windows 资源管理器和目录列表命令 dir /a /s 仅显示你有权访问的文件和文件夹的总文件和文件夹统计信息。 默认情况下,将排除文件隐藏文件和受保护的操作系统文件。 此行为可能导致 Windows 资源管理器或 dir 命令显示不准确的文件和文件夹总计和大小统计信息。

若要在总体统计信息中包含这些类型的文件,请更改 文件夹选项。 为此,请按照以下步骤操作:

  1. 单击“开始**”**,单击“我的计算机”,然后双击卷的驱动器号(例如:D)。 这会打开卷,并显示根目录包含的文件夹和文件。
  2. 在**“工具**”菜单上,单击“文件夹选项**”**,然后单击“视图”选项卡。
  3. 选中“显示隐藏文件和文件夹”复选框,然后单击清除**“隐藏受保护的操作系统文件**”复选框。
  4. 收到警告消息时单击“是**”**,然后单击“应用”按钮。 此更改允许 Windows 资源管理器和 dir /a /s 命令总计卷包含用户有权访问的所有文件和文件夹。

若要确定无法访问的文件夹和文件,请执行以下步骤:

  1. 在命令提示符处,从命令的 dir /a /s 输出创建文本文件。

    例如:在命令提示符处,键入以下命令: dir d: /a /s >c:\d-dir.txt

  2. 启动备份或还原向导。

    1. 单击“开始”,单击“运行**”**,键入 ntbackup,然后单击“确定”。
    2. 单击“ 高级模式”。
  3. 在“工具”菜单上单击“选项”,单击“备份日志”选项卡,单击“详细”,然后单击“确定”。

  4. 在备份实用工具中,单击“ 备份 ”选项卡,然后选择受影响整个卷的复选框(例如: D:),然后单击“ 启动备份”。

  5. 备份完成后,打开备份报告,并将 NTBackup 日志输出的文件夹文件夹与步骤 1 中保存的d-dir.txt输出进行比较。

由于备份可以访问所有文件,因此其报表可能包含 Windows 资源管理器和 dir 命令不显示的文件夹和文件。 如果想要搜索无法使用 Windows 资源管理器访问的大型文件或文件夹,则可以更轻松地使用 NTBackup 接口来查找卷,而无需备份卷。

找到无权访问的文件后,可以在 Windows 资源管理器中查看文件或文件夹的属性时使用 “安全 ”选项卡添加或更改权限。 默认情况下,无法访问系统卷信息文件夹。 必须添加正确的权限才能在命令中包含 dir /a /s 文件夹。

你可能会注意到没有 “安全 ”选项卡的文件夹或文件。或者,可能无法将权限重新分配给受影响的文件夹和文件。 尝试访问它们时,可能会收到以下错误消息:

D:\folder_name\ 不可访问

拒绝访问

如果你有任何此类文件夹,请联系 Microsoft产品支持服务 获取其他帮助。

文件名称无效

包含无效或保留文件名的文件夹或文件也可以从文件和文件夹统计信息中排除。 包含前导或尾随空格的文件夹或文件在 NTFS 中有效,但它们在 Win32 子系统的角度来看无效。 因此,Windows 资源管理器和命令提示符都无法可靠地处理它们。

你可能无法重命名或删除这些文件或文件夹。 尝试执行此操作时,可能会收到以下错误消息之一:

重命名文件或文件夹时出错

无法重命名文件:无法从源文件或磁盘读取。

或

删除文件或文件夹时出错

无法删除文件:无法从源文件或磁盘读取。

如果文件夹或文件无法删除或重命名,请联系Microsoft产品支持服务。

NTFS 主文件表 (MFT) 扩展

创建并格式化 NTFS 卷时,将创建 NTFS 图元文件。 其中一个图元文件名为“主文件表”(MFT)。 创建时,它很小(大约 16 KB),但它随着文件和文件夹在卷上创建而增长。 创建文件时,它将作为文件记录段(FRS)在 MFT 中输入。 FRS 始终为 1024 字节(1 KB)。 随着文件添加到卷中,MFT 将增长。 但是,删除文件时,关联的 FRS 将被标记为免费重复使用,但 FRS 和关联的 MFT 分配总数保持不变。 这就是为什么在删除大量文件后,你不会重新获得 MFT 使用的空间。

若要确切地了解 MFT 的大小,可以使用内置的碎片整理器分析卷。 生成的报表提供有关 MFT 中片段的大小和数量的详细信息。

例如:

主文件表 (MFT) 碎片 总 MFT 大小 = 26,203 KB MFT 记录计数 = 21,444 正在使用的 MFT 百分比 = 81 % MFT 片段总数 = 4

但是,有关整个 NTFS 使用的空间(开销)的更完整信息,请运行 chkdsk.exe 命令,然后查看以下行的输出:

由系统使用。

目前,只有第三方碎片整理程序合并未使用的 MFT FRS 记录并回收未使用的 MFT 分配空间。

备用数据流

NTFS 允许文件和文件夹包含备用数据流。 使用此功能,可以将多个数据分配与单个文件或文件夹相关联。 对文件和文件夹使用备用数据流具有以下限制:

  • Windows 资源管理器和 dir 命令不会将备用数据流中的数据报告为文件大小或卷统计信息的一部分。 相反,它们仅显示主数据流的总字节数。
  • chkdsk 的输出准确报告用户数据文件使用的空间,包括备用数据流。
  • 磁盘配额准确跟踪和报告属于用户数据文件的所有数据流分配。
  • NTBackup 记录备份日志报告中备份的字节数。 但是,它不显示哪些文件包含备用数据流。 它还不显示包含备用流中数据的文件的准确文件大小。

NTFS 文件系统损坏

在极少数情况下,NTFS 图元文件$MFT或$BITMAP可能会损坏并导致磁盘空间丢失。 可以通过针对卷运行 chkdsk /f 命令来识别和修复此问题。 在 chkdsk 末尾,如果必须调整主文件表 (MFT) BITMAP 属性中的 $BITMAP:更正错误,则会收到以下消息。 CHKDSK 发现卷位图中标记为已分配的可用空间。 Windows 已对文件系统进行了更正。

可能导致文件分配混乱的其他 NTFS 功能

NTFS 还支持硬链接和重新分析点,允许你创建卷装入点和目录连接。 当你尝试确定物理卷消耗的空间量时,这些额外的 NTFS 功能可能会导致混淆。

硬链接是文件的目录条目,无论文件数据位于该卷上的位置。 每个文件至少有一个硬链接。 在 NTFS 卷上,每个文件可以有多个硬链接,因此单个文件可以出现在多个文件夹中(甚至是同一文件夹中具有不同名称)。 由于所有链接都引用同一文件,因此程序可以打开任何链接并修改该文件。 只有在删除指向该文件的所有链接后,才会从文件系统中删除文件。 创建硬链接后,程序可以像使用任何其他文件名一样使用硬链接。

注意

Windows 资源管理器和命令提示符显示所有链接文件的大小相同,即使它们都共享相同的数据,并且实际上不使用该数量的磁盘空间。

卷装入点和目录交接点允许 NTFS 卷上的空文件夹指向另一卷上的根文件夹或子文件夹。 Windows 资源管理器和 dir /s 命令遵循重新分析点,对目标卷上的任何文件和文件夹进行计数,然后将其包含在主机卷的统计信息中。 这可能会误导你相信主机卷上使用的空间比实际使用的空间多。

总之,可以使用 chkdsk 输出、NTBackup GUI 或备份日志,以及查看磁盘配额来确定卷上使用磁盘空间的方式。 但是,Windows 资源管理器和 dir 命令在用于此目的时存在一些限制和缺点。

资料来源与适用范围

资料来源
微软官方中文故障文档
适用范围
适用于: Windows Server 2003原始 KB 数: 814594
内容语言
中文;命令、路径和错误标识保留技术原文
本地收录日期
2026-10-26
授权说明
CC BY 4.0

正文与所需资源由本站本地存储。查看来源及更新记录 ↗

请按适用版本和实际日志确认原因;本站没有对每一种系统或设备逐项执行文中的操作。