O
TAR é um utilitário nativo do
FreeBSD e da maioria dos sistemas UNIX, sua sintaxe é simples.
TAR - Tape Archiver. Pode fazer backup de um arquivo, diretório e até de um sistema inteiro, para um arquivo ou fita. Seu arquivo é conhecido como TARBALL.
Sintaxe:
tar <parâmetro> <arquivo_para_backup>
Parâmetros básicos e importantes:
- -c -> Criar um novo arquivo
- -z -> Comprimir com Gzip
- -t -> Ler arquivos que estão compactados
- -f -> Especifica o local que os arquivos devem ser comprimidos
- -x -> Extract dos arquivos
- -v -> Modo Verbose (mostra os arquivos durante a descompactação).
Contudo, é importante entender que por padrão o TAR entende que o local especificado para compactação é uma fita cujo dispositivo está armazenado conforme a variável $TAPE aponta.
# mt status
mt /dev/nsa0 Device not configured
Caso você não tenha um dispositivo de fita, é necessário apontar manualmente o local com o parâmetro <-f>.
Obs.: Lembrando que nem todos os drivers de fita suportam o comando mt.
Compactando com o TAR:
# tar -c -f /media/hd1/etc.tar /etc/
Onde:
- /media/hd1/etc.tar - arquivo destino
- /etc - diretório a ser compactado
Foi gerado um arquivo com o nome etc.tar que contém todos os arquivos do diretório "/etc".
Compactando com o TAR e comprimindo com GZIP:
# tar -cz -f /media/hd1/etc.tar.gz /etc/
Observe que foi adicionado o parâmetro "-z" ao comando acima.
Foi gerado um arquivo com o nome etc.tar.gz (nome ilustrativo) que contém todos os arquivos do diretório "/etc".
O arquivo etc.tar.gz, que foi comprimido com gzip, é bem menor que o arquivo etc.tar, que foi apenas comprimido com o tar.
# du -m etc.tar etc.tar.gz
3 etc.tar
1 etc.tar.gz
Passando "tar -t -f etc.tar.gz", veremos o conteúdo compactado do arquivo etc.tar.gz.
Descompactando com o TAR:
# tar -vxzf etc.tar.gz
Forma de descompactar <-v> em modo verbose, vendo tudo que está sendo descompactado em tempo real.
# ls
etc
etc.tar
etc.tar.gz
Obs.: Caso seja de interesse, é só entrar no diretório e verificar que possui o mesmo conteúdo que seu /etc.
Uma observação importante a fazer é que, ao compactar o TAR, retire a "/" durante o processo. Exatamente por que ao descompactar com <-x> será feito no local determinado. Caso seja do interesse descompactar e substituir o /etc vá para o "/" e descompacte.