2

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

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

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

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

1 ответ1

4

Это создаст файл размером 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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .