RHCSA, RHCE, Linux, Ansible, AWS

Arquivar, comprimir, descompactar e descomprimir arquivos usando tar, star, gzip e bzip2

Linux oferece uma variedade de ferramentas para arquivar grupo de arquivos. Vejamos em seguida os principais conceitos que deve dominar par o exame RHCSA.

gzip e bzip2

Essas ferramentas são utilizadas para compactar e expandir arquivos. Ambos servem o mesmo propósito, e o bzip2 tem uma pequena vantagem na eficiência de compressão.
$gzip arquivoGrande.doc
$bzip2 arquivoGrande2.doc
Nos exemplos acima, usamos ambas as ferramentas para compactar 2 arquivos grandes diferentes. Note que a extensao é adicionada – .gz para o gzip e .bz2 para o bzip2.
Para expandir os arquivos comprimidos, use:
$gzip -d arquivoGrande.doc.bz
ou
$gunzip arquivoGrande.doc.bz
$bzip2 -d arquivoGrande2.doc.bz2
ou
$bunzip arquivoGrande2.doc.bz2
Note que caso tente compactar um diretório, receberá um erro. Para compactar diretório e suas pastas, primeiro use a ferramenta tar.

tar

A ferramenta tar é usado para arquivar diretórios e manter a hierarquia das pastas. Note que o tar não comprime arquivos, apenas coleta uma série de arquivos em um so. O uso do tar geralmente inclui uma ferramenta de compressão, tal como o gzip e o bzip2. Usar o tar junto com o bzip2/gzip é uma ótima solução de backup.
Exemplo:
$tar -cf diretório.tar diretório1
No exemplo acima, criamos um arquivo tar chamado diretório1.tar a partir do diretório1/, incluindo todas as suas pastas. A opção “c” é para criar(create), e “f” arquivo(file). Ou seja, criar um arquivo chamado diretório.tar
Podemos em seguida comprimir esse arquivo tar usando:
$gzip diretório.tar
Note no exemplo acima que precisamos primeiro arquivar o diretório, e depois comprimir o arquivo usando gzip (ou bzip2). A ferramenta tar suporta opções em que podemos fazer o mesmo em apenas um comando:
$tar -czf diretório.tar.gz diretório1/
A opção “z” significa arquivar o diretório, e em seguida comprimir usando gzip. Adicionamos a extensão .gz no nome para fácilitar identificar da ferramenta usado para compactar do arquivo.
$tar -cjf diretório.tar.bz2 diretório1/
A opção “j” significa arquivar o diretório, e em seguida comprimir usando bzip2.
Pode-se ainda adicionar a opção “v” (verbose).
$tar -cjvf diretório.tar diretório1/
Para descompactar um arquivo tar, use a opção “x”(extract).
$tar -xzvf diretório.tar.gz
ou
$tar -xjvf diretório.tar.bz2
Nos exemplos acima, descompactados e expandimos arquivos tar para ambos gzip e bzip2, respectivamente.

star

A ferramenta star ganhou popularidade por fornecer algumas funções mais avançadas, tais como manter as permissões do SElinux, e também por nunca apagar arquivos (override) quando descompactando. Por exemplo, caso tenha dois arquivos iguais no mesmo diretório, o star vai mostrar um erro e não apagara arquivos. Vejamos na prática.
Primeiro, certifique-se que o star esta instalado:
#yum install star
O comando star é diferente do tar comando. Caso pretenda usa-lo – e este pode ser requerido durante o exame – certifique-se que esta familiar com seu uso. Lembre-se que pode sempre usar o man star para consulta durante o exame.
Para compactar um diretório chamado “diretório1” usando star, em sua forma mais simplificada, use:
$star -c -f=meuarquivo.star diretório1
Para descompactar um arquivo star:
$star -x -f=meuarquivo.star
você pode compactar os arquivos usando bzip2 ou gzip, adicionando as opções -bz ou -z.
Por exemplo:
$star -c -z -f=meuarquivo.star diretório1

Avatar de temweb

Sobre o autor

Deixe um comentário