Usando o tar.xz + várias threads e compactação extrema

Publicado por asdfg em 02/09/2019

[ Hits: 770 ]

 


Usando o tar.xz + várias threads e compactação extrema



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:
Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Laço de Repetição - com while e for

Como criar pendrive multiboot (várias ISOs)

Como instalar Java JDK e JRE no Ubuntu Server 10.04?

Encapsular texto/palavra em tags no Sublime-text

Acessando partições NTFS (read/write) com ntfs-3g (Slackware Linux 12)

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts