哪些文件系统优先重用已删除文件中的块?

哪些文件系统优先重用已删除文件中的块?

相关这个先前的问题我问,我想知道哪些文件系统会优先重用删除文件时释放的块(如果存在)?

我只对稳定、完善的文件系统感兴趣,并且更喜欢那些可以作为 Debian 系统中的引导/根分区的文件系统(尽管这不是必需的)。


编辑:
响应评论,我喜欢这种行为,因为 fs 用于虚拟机并且包含在主机上的稀疏原始映像文件中。如果分配新的块,随着时间的推移,随着文件的创建/删除/修改,映像文件会逐渐失去稀疏性,趋向于“非稀疏”大小,即使虚拟机上使用的总存储基本保持不变。

答案1

如果您正在寻找稳定且成熟的公司,那么我认为您不走运。否则,btrfs 的行为方式如下。

您可能还想查看您的虚拟磁盘是否支持 TRIM 来释放块,并确保在 fs 中启用丢弃。

您还可以考虑只分配较小的磁盘,最初大小更大以满足您的预期需求;如果您将来需要增加文件系统,现在大多数文件系统都可以轻松在线扩展。

答案2

xfs 稳定且完善,并且具有以下特点我在找它非常快速地重用“刚刚释放”的块:

xfs、ext2 和 ext3 的行为符合我的预期。他们最终分别使用了 316 MiB、701 MiB 和 1351 MiB。 btrfs 使用了高达 2763 MiB,可能是因为它是写时复制文件系统。它并没有立即分配这个空间,而是以线性方式分配了一些块,然后停滞了一段时间。 ext4 是一个惊喜。它几乎呈线性增长,上限为 19 GiB,即磁盘大小的 93%。虽然这可能非常适合没有 TRIM 支持的固态磁盘,但它不适用于旋转磁盘,因为旋转磁盘在最外层区域显示出更高的延迟和更低的吞吐量。

在此输入图像描述

相关内容