ZFS сжатая и дедуплированная файловая система в файле

1363
Avio

Я могу создавать squashedфайловые системы mksquashfsследующим образом:

mksquashfs dir-1 dir-2 ... dir-n filesystem-on-file.squash -comp xz -Xbcj x86 -Xdict-size 1048576 -b 1024k 

mksquashfsобеспечивает сжатие и дедупликацию данных, но только для чтения. Теперь я хотел бы создать несколько тестовых файловых систем с ZFSвключенными дедупликацией и сжатием.

Что такое эквивалентная команда?

2

1 ответ на вопрос

4
jlliagre

This will create a 100 MB file on /tmp then a zpool and zfs file system on it with both compression and deduplication enabled:

cd /tmp dd if=/dev/zero of=zfile bs=1024k count=100 zpool create -O dedup=on -O compress=on filepool /tmp/zfile 

The file system is mounted on /filepool and unlike squashfs is writable.

Just copy your files and directories in it and use zpool list filepool to get usage (ALLOC/FREE/CAP) and deduplication ratio (DEDUP).

eg.

# zpool list filepool NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT filepool 95,5M 1,50M 94,0M 1% 2.99x ONLINE - 

To see the compression ratio, use the zfs get compressratio command:

# zfs get compressratio filepool NAME PROPERTY VALUE SOURCE filepool compressratio 1.37x - 

You can experiment with the various compression algorithms by specifying a non default one while creating the pool, eg.:

zpool create -O dedup=on -O compress=gzip-9 filepool /tmp/zfile 
Спасибо, работал как шарм. В конце я создал файловую систему со следующими параметрами: `zpool create -O dedup = sha256 -O контрольная сумма = sha256 -O compress = gzip-9 filepool / tmp / zfile`, потому что я хотел улучшить сжатие / дедупликацию. Однако `mksquashfs`, кажется, намного лучше для постоянного архивирования, возможно, из-за сжатия LZMA2. Avio 11 лет назад 0

Похожие вопросы