Take a fresh look at your lifestyle.

#11 – Administração de Sistemas Linux – Compactação, descompactação de arquivos

Neste capítulo, veremos a compactação e descompactação de arquivos

Receba atualizações em tempo real diretamente no seu dispositivo, inscreva-se agora.

Quando falamos em compactação e descompactação de arquivos dentro de sistemas Linux, geralmente pensamos em algo simples e que ninguém precisa saber, eis um grande engano. Um bom administrador de sistemas Linux precisa ter o conhecimento amplo, e este item é altamente recomendado, em especial quando vamos lidar apenas com terminal. Afinal, em alguns casos não haverá ambiente gráfico e para isso, é preciso ter ciência de como compactar ou descompactar os arquivos no Linux.

Quando o assunto é Linux temos vários tipos de arquivos, no entanto as mais famosas são gzip e bzip2 e assim, as extensões que serão exibidas seria respectivamente .gz e bz2. Dentre os dois tipos de arquivos que citamos, o bzip2 é a melhor opção quando o assunto é compressão de arquivos, ele consegue tornar os arquivos compactados menores do que se fosse usado o gzip, mas em caso de urgência saiba que o bzip2 demora um pouco para descompactar ou compactar.

Mas, antes de você sair por aí compactando tudo, saiba que grandes arquivos ou diretórios, precisam ser compactados com .tar e só assim podem ser compactados em gz ou gz2.

Arquivos .tar

Agora, vamos usar uma nomenclatura a qual pode ser estranho para alguns, seria empacotamento, o termo é usado para definir o ato de reunir vários arquivos tornando-os um, desde que seja um dentro do outro, que também é chamado de arquivo pacote. Geralmente este arquivo final possui o mesmo tamanho correspondente ao tamanho de cada arquivo unificado, ou empacotado.

Atualmente mesmo depois de tanto tempo, o utilitário mais usado ainda permanece o .tar.

Como empacotar usando o .tar

Por ser recursivo, o comando tar pode ser usado não só em aplicações, pode também empacotar os arquivos de um diretório inteiro. Seria basicamente o que acontece no supermercado, uma bandeja de ovos, carne e tantas outras coisas e inserimos todos deles dentro de uma sacola ou caixa, neste momento podemos usar o ato de juntar tudo em um único pacote de empacotamento.

Para empacotar usando o .tar veja como é simples. Digamos que você queira empacotar o diretório /opt então veja como ficaria a sintaxe do comando.

sudo tar cvf empacotamento_opt.tar /opt

E assim, o nosso empacotamento do diretório /opt terá o tamanho equivalente ao tamanho real de todos os arquivos ali contidos!

Como desempacotar usando o .tar

Sem muito o que explicar, o desempacotamento é parecido com o empacotamento, o comando é bem semelhante.

sudo tar xvf empacotamento_opt.tar

E aí você pode pensar que na sintaxe do comando é possível identificar o xvf e o cvf que aparecem na composição da sintaxe, mas vamos entender isso também.

  • c -> Especifica o arquivo ou diretório que será empacotado.
  • f -> Item obrigatório para manipular o arquivo, a letra “f” vem de file.
  • v -> Com o v o modo verbose é ativado, ou seja, você saberá tudo o que esta acontecendo, será exibido a saída do que esta sendo feito. Não é mais necessário usar o ‘-‘ para especificar as opções do TAR.
  • x -> É usado para extrair o arquivo ou diretório.

Compactando com compress, gzip e bzip2

Ao contrário do empacotamento, a compactação como o nome já diz serve comprimir os arquivos ou itens compactados, com a finalidade de diminuir o tamanho do arquivo, isso dar-se pelo fato de que a compactação atua sobre as sequências de bits repetidos e que estão presentes em um arquivo ou pacote.

Compactadores comuns e ainda muito utilizados são:

  • Compress
  • gzip
  • bzip2

Para começar vamos instalar o tão falado compress:

Para Ubuntu, Debian, Linux Mint:

sudo apt install ncompress

Para Fedora e derivados:

sudo dnf install ncompress
Nota: O nome do pacote geralmente é o mesmo para qualquer distribuição, por isso apenas citamos dois exemplos!

Identificado o resultado das compactações de cada compactador

Apesar de parecer redundante, e é, você precisa entender quando um arquivo é compactado com cada item.

  • Extensão .Z – Compactado com o compress
  • Extensão .gz – Compactado com gzip
  • Extensão .bz2 – Compactado com bzip2

E como compactar com o Compress, gzip e bzip 2?

Para compress execute:

compress -c aquivo > arquivo.Z

Para gzip execute:

gzip -c arquivo > arquivo.gz

Para bzip2 execute:

bzip2 -c arquivo > arquivo.bz2

E como descompactar com o Compress, gzip e bzip 2?

Para compress execute:

uncompress arquivo.Z

Para gzip execute:

gzip -d arquivo.gz

Para bzip2 execute:

bzip2 -dc arquivo.bz2 > arquivo

Compactando e empacotando ao mesmo tempo .tar.bz2 e .tar.gz

Vamos usar o exemplo do primeiro empacotamento que fizemos empacotamento_opt.tar

Com .tar.gz:

sudo tar czvf empacotamento_opt.tar.gz /opt

Com .tar.bz2:

sudo tar cjvf empacotamento_opt.tar.bz2 /opt

Descompactando e desempacotando ao mesmo tempo .tar.bz2 e .tar.gz

Com .tar.gz:

sudo tar xzvf empacotamento_opt.tar.gz

Com .tar.bz2:

sudo tar xjvf empacotamento_opt.tar.bz2

E para não ser diferente, vamos então entender as opções dos comandos que usamos como exemplos:

  • c -> Especifica o arquivo ou diretório que será empacotado.
  • f -> Item obrigatório para manipular o arquivo, a letra “f” vem de file.
  • v -> Com o v o modo verbose é ativado, ou seja, você saberá tudo o que esta acontecendo, será exibido a saída do que esta sendo feito. Não é mais necessário usar o ‘-‘ para especificar as opções do TAR.
  • x -> É usado para extrair o arquivo ou diretório.
  • Z -> Indica que será compactado com o compress
  • j -> Indica que será compactado com o bzip2
Neste capítulo do curso de Administração de Sistemas Linux, observamos a compactação de arquivos, descompactação e também o empacotamento. No próximo capítulo vamos dar continuidade ao assunto.
Comentários