![什么是保留的 MFT 空间?](https://linux22.com/image/1250246/%E4%BB%80%E4%B9%88%E6%98%AF%E4%BF%9D%E7%95%99%E7%9A%84%20MFT%20%E7%A9%BA%E9%97%B4%EF%BC%9F.png)
当我查看 Defraggler 的驱动器图时,我看到一个很大的部分,我估计大约有 4 Gigs,是保留的 MFT 空间。
我正在运行 XP Home。这是一台较旧的计算机,磁盘空间不足。我将被迫在某个时候升级这台计算机,但目前,这台计算机有何用途?有没有什么方法可以回收这些空间?
顺便提一下,我认为可能与此相关的是,我在同一分区上也有大约 4 GB 专用于交换文件。
答案1
MFT(主文件表)实际上是硬盘驱动器上的空间,记录了驱动器上存储每个文件的位置。
由于 MFT 变得碎片化通常是一件坏事,因此您通常会分配一块比其所需大得多的空间,以便它可以增长而不会遭受碎片的影响 - 这就是保留 MFT 空间所指的。
它实际上不是“已使用”的空间,将作为您数据的最后手段。摘自Microsoft 知识库文章:
MFT 区域不会从用于用户数据文件的可用(空闲)驱动器空间中扣除,它只是最后使用的空间。当 MFT 需要增加大小时(例如,您创建了新文件和目录),它会首先从 MFT 区域中提取,从而减少 MFT 碎片并优化 MFT 性能。
答案2
摘自此论坛
什么是保留的 MFT 空间?
MFT 是 NTFS 分区的核心。NTFS 卷上的每个文件在 MFT 中至少有一个条目。有关文件的所有信息(包括其大小、时间和日期戳、权限、数据内容等)都存储在 MFT 中(或存储在 MFT 描述的空间中)。
为了防止 MFT 碎片化,NTFS 会为 MFT 保留空间,以使其在增长时尽可能保持连续。这一点很重要,因为碎片整理程序无法移动 MFT 记录,而 MFT 碎片化会严重影响性能。
当您将文件添加到 NTFS 卷时,条目将添加到 MFT。当从 NTFS 卷中删除文件时,它们的 MFT 条目将被标记为可用并可重新使用,但 MFT 不会缩小。因此,这些条目使用的空间不会从磁盘中回收。
NTFS 会保留一定比例的卷以专供 MFT 使用。在分配完所有其他空间之前,不会从此 MFT 区域分配文件和目录的空间。根据平均文件大小和其他变量,保留的 MFT 区域或磁盘上的未保留空间可能会先被填满。包含少量大文件的卷将首先耗尽未保留空间,而包含大量小文件的卷将首先耗尽 MFT 区域空间。当 MFT 区域或未保留空间填满时,MFT 开始产生碎片。如果未保留空间已满,则将从 MFT 区域分配用户文件和目录的空间。如果 MFT 区域已满,则将从磁盘的剩余部分分配新 MFT 条目的空间。
您可以通过编辑以下内容来影响 NTFS 为 MFT 保留的空间量:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\FileSystem
添加值名称 NtfsMftZoneReservation 作为 REG_DWORD 类型并设置数据值。有效范围是 1 - 4。
值:1 12.5% 的可用空间,默认
值:2 25% 的可用空间
值:3 37.5% 的可用空间
值:4 50% 的可用空间