Olá, pessoal.
Resolvi fazer essa dica, porque ultimamente eu estive dando uma pesquisada sobre compactação em
tar.xz e não encontrei nenhum tópico aqui que especificasse bem sobre como usar vários threads + compactação extrema.
Não sou nenhum entendido sobre nenhum assunto no
Linux (não faz nem um ano que eu o uso) então, se alguém quiser acrescentar algo, diz ai que eu coloco.
Usando o xz
Para consultar o manual:
man xz
Arquivo para compactá-lo, onde "-k" preserva o arquivo que o "xz" apagaria:
xz -k (--keep)
Para descomprimi-lo, preservando ".xz":
xz -dk (--decompress) (--keep) aqv.xz
Onde:
- -v: de --verbose ( detalhes )
- -Tnumero: de --threads=numero exemplo -T4
- -9: nível de compactação, que pelo que eu entendi, tem um limitador de recurso, mas pode ser anulado usando o "--extreme" ou em conjunto com o "-T" que ficaria "-9e" (níveis vão de 1 a 9).
Exemplo 1:
xz -kvT4 -9e arquivo: não coloque nada na frente do T4, ou gera uma mensagem de erro (ao menos para mim).
Exemplo 2:
xz -dkvT4 arquivo.xz: que seria para descomprimir o "xz", usando múltiplas threads e preservando o "arquivo.xz", enquanto detalha suas ações
Não sei se o "xz" compacta pastas, por isso eu o uso em conjunto com o "tar" o que nos leva adiante.
Usando o tar xz
Para manual:
man tar
Para indicar que é um "xz":
- tar -J (--xz)
- -v (--verbose): detalhes
- -c (--create): indica que esta criando um arquivo
- -f (--file=arquivo): que indica que é um diretório
Exemplo (compacta um diretório):
tar -Jvcf arquivo.tar.xz arquivo/
Links (talvez) melhores explicações:
tar.xz + threads + extreme
Seria assim:
tar -Jvcf - teste/ | xz -T4 -9e > teste.tar.xz
Onde: "-Jvcf" é:
tar --xz --verbose --create --file - teste/ | xz --threads=4 --extreme -9 > teste.tar.xz
"-" → não representa nada, é só para não gerar uma mensagem de erro.
"|" → une os comandos "tar" e "xz" (usar sempre à frente do comando que vai unir, exemplo:
cat arquivo.txt | less
">" → direciona a saída para o arquivo "teste.tar.xz", que vai tudo que foi feito.
Para criar uma pasta com o nome "teste":
mkdir teste
Cria um arquivo de texto com a saída do comando "lshw":
lshw > teste/teste.txt
tar -Jvcf - teste/ | xz -T4 -9e > teste.tar.xz compactei
Agora, vejamos o tamanho de ambos em bytes:
- 25494 → teste
- 3784 → teste.tar.xz :: já cheguei a reduzir em até 5 GB com esse comando, mas tudo depende do tipo do arquivo.
Para ver o tamanho:
Nenhum comentário foi encontrado.