O btrfs compactará automaticamente os arquivos existentes quando a compactação estiver ativada?

25

Eu escolhi o btrfs como o formato do meu sistema de arquivos / no instalador do Ubuntu 12.04 LTS. Após a conclusão da instalação, adicionei compress=lzo às opções de montagem em /etc/fstab e reinicializei.

Os arquivos existentes serão automaticamente compactados agora ou devo fazer algo explicitamente para que isso aconteça?

    
por ændrük 01.05.2012 / 05:35

6 respostas

25

Você terá que executar btrfs fi defragment para forçar a recompressão de dados existentes. Caso contrário, apenas novos dados serão compactados.

Em FAQ :

% bl0ck_qu0te%     
por Norbert Fabritius 01.05.2012 / 19:28
10

Eu fiz o que o Norbert Fabritius disse, mas não notei nenhuma compactação nos arquivos existentes - df -h / antes btrfs fi defragment = 658MB | df -h / após btrfs fi defragment = 658MB. Novos arquivos estão ok. Pesquisando um pouco me traga essa citação:

% bl0ck_qu0te%

Depois disso, meu / esta ocupando 656MB - nada grande, mas certamente há compressão.

Fonte: link

Espero que isso ajude.

Desculpe meu inglês.

    
por J. Neto 17.05.2013 / 18:37
8

De acordo com a documentação da Oracle, você pode compactar arquivos existentes em um sistema de arquivos on-line existente, desfragmentando cada arquivo com as opções -c, -clzo ou -czlib. LZO é recomendado para velocidade.

find / -xdev \( -type f -o -type d \) -exec btrfs filesystem defragment -v -clzo -- {} +

Isto usa o comando find para executar o desfragmentador btrfs em cada arquivo no sistema de arquivos raiz (dado pela barra logo após o comando "find" no início). Se você tiver outros subvolumes, poderá usá-lo novamente com o caminho de um subvolume (eu tenho um em / home, por exemplo) em vez da barra simples.

Você precisará de privilégios de root para isso, então adicione o sudo à frente se precisar.

Veja:

por Geoff 05.09.2013 / 23:12
2

De acordo com o link os seguintes algoritmos de compactação estão disponíveis:


compress,compress-force
Enable compression. Starting with kernel 2.6.38 you can choose the algorithm for compression:

 - compress=zlib - Better compression ratio. It's the default and safe for olders kernels.
 - compress=lzo - Faster compression.
 - compress=no - Disables compression (starting with kernel 3.6). 

compress-force= - Enable compression even for files that don't compress well, like videos and dd images of disks. The options compress-force=zlib and compress-force=lzo works for kernels >2.6.38.

Note that old (before 2012) btrfs-progs versions will probably fail some operations (e.g. fsck) on filesystems with LZO compression. 

Observação: esta postagem é a resposta para a pergunta adicional sobre o tipo de algoritmo de compactação disponível, que foi perguntado abaixo ... por favor, não me culpe.

    
por Rostislav Stribrny 16.03.2013 / 12:22
2

De acordo com ArchWiki :

% bl0ck_qu0te%

Muito bom! Deus abençoe BTRFS!

Além disso, em o wiki do BTRFS :

% bl0ck_qu0te%     
por Geremia 12.03.2015 / 03:58
-9

A compactação é ativada por padrão no Btrfs, portanto, a menos que você a desative explicitamente, ela deve ser compactada.

    
por Diego 06.05.2012 / 13:16