Linux: como compactar e descompactar arquivos tar.gz

lucas.felix
lucas.felix

Compartilhe

O que é tar? Entenda como compactar e descompactar arquivos tar.gz no Linux 

Se você utiliza Linux, provavelmente já se deparou com arquivos compactados no formato .tar, .tar.gz ou .tgz — formatos comuns para compactar e descompactar arquivos e pastas no Linux, além do tradicional .zip

Arquivos com a extensão .tar.gz indicam que dois processos foram realizados: primeiro, os arquivos foram empacotados no formato .tar (unidos em um único arquivo); depois, esse pacote foi compactado no formato gzip, reduzindo seu tamanho. 

O comando para compactar arquivos no Linux com o `tar` gera um `arquivo.tar` apenas juntando os arquivos, sem compressão (empacotamento), enquanto o comando para compactar em .tar.gz utiliza o algoritmo `gzip` para reduzir o tamanho do arquivo.  

Banner da Escola de DevOps: Matricula-se na escola de DevOps. Junte-se a uma comunidade de mais de 500 mil estudantes. Na Alura você tem acesso a todos os cursos em uma única assinatura; tem novos lançamentos a cada semana; desafios práticos. Clique e saiba mais!

Por isso, a maioria dos usuários busca como compactar e descompactar arquivo .tar.gz no Linux ou ainda como descompactar arquivo .tar no Linux. 

A principal vantagem do `tar` é preservar permissões e links (diretos e simbólicos), o que é especialmente útil em operações como backups. 

Para compactar arquivos e pastas no Linux com o comando `tar`, usamos a seguinte sintaxe.  

Por exemplo, para compactar o diretório `Projetos/` em um arquivo .tar.gz

SQL  

$ tar -czf projetos.tar.gz Projetos/ 

Diferente do zip, o comando `tar` já age de forma recursiva, não sendo necessário um argumento extra para isso. Veja o significado das opções: 

  • * `-c`: cria um novo arquivo; 
  • * `-z`: compacta com gzip; 
  • * `-f`: indica o nome do arquivo de saída. 

Para descompactar um arquivo tar.gz no Linux, basta utilizar o parâmetro `-x` (de extract) no lugar do `-c`. Esse comando serve tanto para descompactar tar quanto para descompactar tar.gz no Linux: 

 SQL  

$ tar -xzf projetos.tar.gz 

O comando tar, ao contrário do zip, não exibe automaticamente os arquivos sendo processados (modo silencioso).  

Para visualizar o progresso ao compactar arquivo Linux ou ao descompactar arquivos tar.gz, acrescente o argumento -v (verbose): 

Vale lembrar: a escolha entre compactar arquivos no Linux com .tar.gz ou com .zip pode afetar a relação entre compressão e compatibilidade. O formato .tar.gz preserva permissões e estrutura do Linux, enquanto o .zip é mais comum em sistemas Windows. 

Screenshot do terminal mostrando o comando 'ls -l' comparando os tamanhos dos arquivos: projetos.tar.gz (528 bytes) e projeto.zip (1486 bytes), demonstrando que o arquivo .tar.gz resultou em menor tamanho

Quer aprofundar mais? Confira a trilha Começando no Linux, caso queira mergulhar mais profundamente na trilha Linux Essentials e aprenda outros comandos e práticas essenciais.

Veja outros artigos sobre DevOps