Windows 中删除文件后如何回收可用空间?

Windows 中删除文件后如何回收可用空间?

每当我删除大量文件(多个 GB)时,我都会注意到这不会释放我预期的那么多空间。我的预期是,如果我删除一定量的数据,我的可用空间将增加相同的量。

但是,如果我删除 5GB 的文件,清空垃圾并查看硬盘上的可用空间,它并没有增加 5GB。Windows XP 和 Windows 7 上都会发生这种情况。

那么,被删除的文件占用的空间会怎样呢?为什么删除的数据量和回收的可用空间量之间没有一一对应的关系?

我发现相似的 问题适用于 Mac 和 Linux,但不适用于 Windows。我使用 Windows 资源管理器来确定文件大小和可用空间。

答案1

这里有几件事需要考虑。

  1. 由于硬链接/符号链接,文件可能被计算两次或更多次
  2. 如果启用“系统还原”,Windows 可能会在隐藏位置保留备份副本。
  3. 文件可以“稀疏”分配,这意味着文件中未使用的块实际上并未分配到磁盘上。大小显示为文件的“总”大小,但删除时仅释放使用的部分,因此收益低于预期。
  4. 文件可以被压缩,因此它们实际占用的空间(以及释放的空间)远远小于报告的大小。
  5. MFT(NTFS 保存其内部管理的磁盘区域)可能会增大和/或产生碎片,在某些情况下,当您删除文件时,MFT 可能会增大。(但不会造成很大影响。)
  6. 如果删除一个仍在被程序使用的文件,则可能文件看上去已被删除,但直到程序释放/关闭该文件时,它才会真正被释放。
  7. 最后但并非最不重要的一点:在某些情况下,文件系统损坏可能会导致错误地报告可用空间。通过磁盘属性 GUI 执行“Chkdsk /f”或“检查和修复”应该可以解决此问题。

相关内容