ZFS 文件删除及其与磁盘空间的关系

ZFS 文件删除及其与磁盘空间的关系

我从 Solaris 系统中删除了一个大文件(很多 GB),但似乎无法恢复 zpool 上与文件大小相等的空间量。有什么原因导致我无法立即看到这些空间?删除 ZFS 中的文件涉及哪些步骤?

答案1

释放的空间不等于文件大小,有几种可能性。

  • 压缩 - 您可能在文件系统上打开了压缩,并且文件可能已经被压缩。
  • 稀疏文件 - 如果创建的文件是稀疏文件,则文件的任何连续的空白区域几乎都不会占用驱动器上的空间,因此删除该文件不会恢复您可能想象的空间量。
  • 快照 - 我怀疑这就是您看到的情况的原因。如果您有一个引用该文件的快照,则数据仍在使用中,无法恢复。您需要删除所有快照才能完全恢复空间。如果文件自您创建快照以来发生了变化,那么您将恢复部分空间(自创建快照以来更改的空间量),但文件未更改的部分仍由快照本身引用。
  • 重复数据删除 - 这是一项较新的功能,您可能尚未启用,但我将其作为一种可能性。重复数据删除会查找相同的块并仅存储一次。如果您删除引用其中一个块的文件,则无法恢复该空间,因为它正被另一个文件引用。

相关内容