Sistema de arquivos compactado e deduzido do ZFS no arquivo

2

Eu posso criar squashed filesystems com mksquashfs desta forma:

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

mksquashfs fornece compactação e deduplicação de dados, mas é somente leitura. Agora, gostaria de criar alguns sistemas de arquivos de teste com ZFS com a deduplicação e a compactação ativadas.

Qual é o comando equivalente?

    
por Avio 27.10.2012 / 16:10

1 resposta

4

Isso criará um arquivo de 100 MB em / tmp e, em seguida, um sistema de arquivos zpool e zfs com a compactação e a deduplicação ativadas:

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

O sistema de arquivos é montado em / filepool e, ao contrário do squashfs, é gravável.

Copie seus arquivos e diretórios nele e use zpool list filepool para obter o uso (ALLOC / FREE / CAP) e a taxa de desduplicação (DEDUP).

por exemplo,

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

Para ver a taxa de compactação, use o comando zfs get compressratio :

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

Você pode experimentar os vários algoritmos de compactação especificando um não padrão ao criar o pool, por exemplo:

zpool create -O dedup=on -O compress=gzip-9 filepool /tmp/zfile
    
por 27.10.2012 / 17:12