如何压缩 TMPFS 文件夹?

如何压缩 TMPFS 文件夹?

我正在寻找一种动态压缩 tmpfs 文件夹的方法。我想将它用于包含大量数据的本地缓存文件夹。我知道有一种方法可以使用 Redis 进行 LZF 压缩,但我更喜欢使用 tmpfs。

答案1

你可以安装一个压缩文件系统在 tmpfs 之上。

如果仍然保留,fusecompress就很符合目的。

不幸的是它似乎已经过时了,所以我们需要另一个实现(出于性能原因最好不要使用基于 FUSE 的文件系统):

似乎Btrfs和都ZFS应该有效 - 但我无法给出使用它们的详细建议。

当然还有其他可以工作的文件系统,但了解哪些解决方案具有合适的功能并非易事。e2压缩器例如,压缩文件,但不压缩目录。根据您的使用情况,您可能需要压缩目录。许多压缩文件系统被排除在外,因为它们是只读的(例如squashfs),针对从静态映像启动嵌入式设备或实时桌面会话等应用程序。

关键点是性能。它是否足够快取决于您的需求和实现 - 您需要进行测试。

答案2

最近我一直在使用zram 生成器zstd为内核构建创建压缩目录。目前我remount -o rw,noatime,discard,nodev,nosuid /zram/mountpoint但这个功能应该是很快就包括在内作为mount-option

[~/build]$ zramctl
NAME       ALGORITHM DISKSIZE  DATA  COMPR  TOTAL STREAMS MOUNTPOINT
/dev/zram2 zstd          5.9G  1.3G   1.3G   1.3G      16 /var/build/sources
/dev/zram1 zstd           15G  1.2G 289.1M 302.9M      16 /var/build/makepkg
/dev/zram0 zstd            3G  9.1M   8.3M   8.7M      16 [SWAP]

相关内容