Backup com ZIP e TAR

Publicado por Diego Mendes Rodrigues em 28/06/2018

[ Hits: 6.112 ]

Blog: https://www.linkedin.com/in/diegomendesrodrigues/

 


Backup com ZIP e TAR



Compactação e descompactação

A compactação e descompactação de arquivos e diretórios é uma atividade comum no dia a dia de usuários e administradores de sistemas Linux. Podemos compactar um diretório para realizar um backup, ou em outros casos, para realizar uma cópia para outra estação de trabalho. No cotidiano, costumamos realizar o download de arquivos compactados dos mais diversos tipos e, naturalmente precisaremos descompactá-los para que seja possível utilizá-los devidamente.

O objetivo da compactação é unir vários arquivos em um só, fazendo também com que o arquivo final fique menor, sendo mais fácil de copiar. Isso é feito através de programas compactadores de arquivos, que utilizam algoritmos para que seja possível reduzir o tamanho dos dados que serão compactados.

Utilizar ZIP

Um formato muito utilizado, principalmente no Windows, é o ZIP. No Linux utilizamos o comando "zip -r" para realizar esse tipo de compactação.

Como exemplo, irei compactar a pasta ~/Propostas.

ls Propostas/ -l
total 12
-rw-r--r-- 1 diego diego 161 jun 18 10:48 Prop_00101_Network.docx
-rw-r--r-- 1 diego diego 141 jun 18 10:48 Prop_00102_Website.docx
-rw-r--r-- 1 diego diego 784 jun 18 10:48 Prop_00103_App.docx

Criando o arquivo comprimido propostas.zip:

zip -r propostas.zip ~/Propostas/
  adding: home/diego/Propostas/ (stored 0%)
  adding: home/diego/Propostas/Prop_00101_Network.docx (deflated 50%)
  adding: home/diego/Propostas/Prop_00103_App.docx (deflated 48%)
  adding: home/diego/Propostas/Prop_00102_Website.docx (deflated 16%)

Listando o arquivo criado:

ls *.zip -l
-rw-r--r-- 1 diego diego 1437 jun 18 10:49 propostas.zip

Para descompactar o arquivo propostas.zip, irei primeiro apagar o diretório Propostas.

rm -r Propostas/

Agora, com o comando unzip, descompacto o arquivo.

unzip -q propostas.zip

Utilizar o TAR

O tar não é um compactador e sim um arquivador, ou seja, ele junta vários arquivos em um só, podendo ser utilizado em conjunto com um compactar, como o gzip ou zip, para armazena-los compactados.

O tar também é muito usado para cópias de arquivos especiais ou dispositivos do sistema Linux. É comum encontrar arquivos com a extensão .tar, .tar.gz, .tgz, .tar.bz2, .tar.Z, .tgZ, o primeiro é um arquivo normal gerado pelo tar e todos os outros são arquivos gerados através tar junto com um programa de compactação (gzip (.gz), bzip2 (.bz2) e compress (.Z).

Como exemplo, irei compactar a pasta Propostas/.

ls
Prop_00101_Network.docx  Prop_00102_Website.docx  Prop_00103_App.docx

Para criar o arquivo colecao_docx contendo todos os arquivos txt do diretório atual, basta digitar:

tar -cvf colecao_docx *.docx
Prop_00101_Network.docx
Prop_00102_Website.docx
Prop_00103_App.docx

Para verificar o conteúdo do arquivo colecao_txt, digite:

tar -tvf colecao_docx

Para extrair todos arquivos de colecao_docx, digite:

tar -xvf colecao_docx

Para extrair apenas um determinado arquivo de colecao_txt, digite:

tar -xvf colecao_docx nome_arquivo

É possível compactar os arquivos agrupados por tar. Por exemplo, para compactar com gzip os arquivos que começam por Prop no repositório colecao, digite:

tar -czvf colecao.tar Prop*
Prop_00101_Network.docx
Prop_00102_Website.docx
Prop_00103_App.docx

No comando acima, utilizamos os argumentos:
  • -c para criar o arquivo;
  • -z onde definimos a compactação como gzip;
  • -v que é o verbose, ou seja, exibe os arquivos que estão sendo comprimidos;
  • -f para definir o arquivo;

ficando -czvf. Como esse arquivo está compactado com o gzip, seria melhor alterar o nome do arquivo para colecao.tar.gz.

tar -czvf colecao.tar.gz Prop*
Prop_00101_Network.docx
Prop_00102_Website.docx
Prop_00103_App.docx

Para descompactar, basta utilizar o -x de extract no lugar do -c.

ls
colecao.tar.gz
tar -xzvf colecao.tar.gz
Prop_00101_Network.docx
Prop_00102_Website.docx
Prop_00103_App.docx
ls
colecao.tar.gz  Prop_00101_Network.docx  Prop_00102_Website.docx  Prop_00103_App.docx

Abraço,
Diego M. Rodrigues

Outras dicas deste autor

pfetch ao invés do neofetch

Instalar a IDE Java IntelliJ IDEA

Java 10 - final de vida do Java 9!

Gerenciando o GRUB com o GRUB Customizer

Adicionando o Timestamp no History

Leitura recomendada

Backup incremental com rsync

Clonezilla (100% automatizado) com GRUB2

Montar partição VMFS 5 ou VMFS 6 no CentOS 8

Compilando o Bacula no CentOS 8

Backup de Arquivos de Windows através do GNU/Linux

  

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