Это создаст файл размером 100 МБ в /tmp, а затем в нем файловую систему zpool и zfs с включенным сжатием и дедупликацией:
cd /tmp
dd if=/dev/zero of=zfile bs=1024k count=100
zpool create -O dedup=on -O compress=on filepool /tmp/zfile
Файловая система монтируется в /filepool и в отличие от squashfs доступна для записи.
Просто скопируйте в него ваши файлы и каталоги и используйте zpool list filepool
для получения данных об использовании (ALLOC/FREE/CAP) и коэффициенте дедупликации (DEDUP).
например.
# zpool list filepool
NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
filepool 95,5M 1,50M 94,0M 1% 2.99x ONLINE -
Чтобы увидеть степень сжатия, используйте команду zfs get compressratio
:
# zfs get compressratio filepool
NAME PROPERTY VALUE SOURCE
filepool compressratio 1.37x -
Вы можете поэкспериментировать с различными алгоритмами сжатия, указав при создании пула нестандартный алгоритм, например:
zpool create -O dedup=on -O compress=gzip-9 filepool /tmp/zfile