![btrfs:如何计算btrfs压缩节省的空间?](https://linux22.com/image/117136/btrfs%EF%BC%9A%E5%A6%82%E4%BD%95%E8%AE%A1%E7%AE%97btrfs%E5%8E%8B%E7%BC%A9%E8%8A%82%E7%9C%81%E7%9A%84%E7%A9%BA%E9%97%B4%EF%BC%9F.png)
我已经为我的 btrfs 分区启用了压缩(使用 挂载compress=lzo
)并使用了一段时间。
我很好奇多少钱益处压缩给我带来了并且我很感兴趣节省空间价值(sum of all file sizes) - (actual used space)
。
有没有任何直接的方法来获取这个值,或者我是否必须编写一个脚本来总结例如df
输出并将其压缩为btrfs filesystem df
输出?
答案1
在 Debian/Ubuntu 中:
apt install btrfs-compsize
compsize /mnt/btrfs-partition
在费多拉中:
dnf install compsize
compsize /mnt/btrfs-partition
输出是这样的:
Processed 123574 files, 1399139 regular extents (1399139 refs), 69614 inline.
Type Perc Disk Usage Uncompressed Referenced
TOTAL 73% 211G 289G 289G
none 100% 174G 174G 174G
lzo 32% 37G 115G 115G
它需要 root ( sudo
) 才能工作(否则SEARCH_V2: Operation not permitted
)。
它可以用于任何目录(总计子树),而不仅仅是挂载点的整个文件系统。
在使用 zstd 的系统上,但一些旧文件仍然使用 lzo 压缩,每个文件都会有行。 (该Perc
列是该行的磁盘大小/未压缩大小,而不是以这种方式压缩的总数。越小越好。)