Trabalhando com o tar no linux - Certificação Linux - Dicas Linux
Os arquivos tarball são distribuições de software livre que mantêm uma estrutura de diretórios, arquivos fonte, um arquivo Makefile, documentação e outros arquivos, encapsulados em um arquivo tar com compressão de dados gzip.
Este método de distribuição de software é muito popular porque os utilitários tar e gzip são muito comuns.
O resultado é um arquivo com sufixo .tar.gz ou .tgz.
Ainda é possível encontrarmos os arquivos tarball com o sufixo .bz2 e .tbz2. Estes arquivos foram compactados com o bzip2 que utiliza um algoritmo de compressão de dados melhor que o gzip.
Você poderá abrir o conteúdo de um arquivo tarball de duas formas:
# gzip –d arquivo.tar.gz
O comando gzip descomprime o arquivo.tar.gz e retira o sufixo .gz.
# tar xvf arquivo.tar
O utilitário tar extrai o conteúdo do pacote.
Podemos também utilizar formas mais simples:
# tar xvzf arquivo.tar.gz
# gzip –dc arquivo.tar.gz | tar xv
Se o arquivo for compactado com o bzip2, ele deve ser descompactado pelo bunzip2 ou utilizar a opção –d do bzip2.
# bzip2 –d arquivo.tar.bz2
# bunzip2 arquivo.tar.bz2
Veja a comparação entre a compactação realizada pelos compactadores gzip e bzip2 e um arquivo tar sem compactação:
10.772.480  apache.tar
2.097.339  apache.tar.bz2   (5x menor)
2.467.371  apache.tar.gz    (4x menor)
É importante saber que para o Linux pouco importa o sufixo dos arquivos. Ele verifica início dos arquivos para saber qual é o formato dele e qual programa está associado a este formato. Portanto, os sufixos .tar.gz, .tgz, .bz2 e .tbz2 são para facilitar o entendimento humano.
Os primeiros bytes dos arquivos são chamados de Magic Numbers, de forma que cada tipo de formato de arquivo tem seus primeiros bytes únicos, que podem ser lidos para identificá-los.
O utilitário file pode ser usado para ler os primeiros bytes dos arquivos e identificar qual o tipo de arquivo.
# file php-5.3.0.tar.gz
php-5.3.0.tar.gz: gzip compressed data, was "php-5.3.0.tar", from Unix, last modified: Mon Jun 29 12:46:48 2009, max compression
# file IntegrACAO.zip
IntegrACAO.zip: Zip archive data, at least v2.0 to extract
/bin/bash: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.4, dynamically linked (uses shared libs), stripped