在 btrfs 文件系统上删除数千个文件的最快方法是什么?

mai*_*ilq 4 filesystems remove btrfs

目前我有一个 btrfs 挂载点,其结构如下:#

/mountpoint/month/day/hourAs24/

每个叶目录包含 5,000 到 20,000 个小文件。我在那里保存了两个月的文件。每天我都会使用命令删除超过 60 天的目录

rm -R /mountpoint/month/day/

此命令需要很长时间才能运行,并且该命令运行时服务器上的负载非常高。

/mountpoint/month/每天在下面创建 btrfs 子卷,然后在一个命令中清除子卷会更好吗?

有没有其他快速和轻量级的解决方案可以在单个命令中删除一个 btrfs 目录下的文件?

编辑: 澄清情况。在结构中,文件夹month,dayhourAs24是由当前日期时间的相应值替换的变量。

解决后编辑: 它在我的测试机器上运行顺利。并且以下所有作品都在安装了挂载点的情况下生效!首先,我为每个月创建普通目录

mkdir /mountpoint/month

然后我为每月的每一天创建 btrfs 子卷

btrfs subvolume create /mountpoint/month/day

然后我为一天中的每个小时创建普通目录

mkdir /mountpoint/month/day/hourAs24

60 天后,我可以轻松清除当天的目录

btrfs subvolume delete /mountpoint/month/day

(现在我必须等待 60 天才能看到生产服务器上的性能)

wom*_*ble 8

我自己会走子卷路线。你只是无法在速度上击败它,如果你倾斜头部并眯起眼睛,你甚至可以说它看起来像是存储文件的“正确”方式......