Eu normalmente assumi que tar
era um utilitário de compactação, mas não tenho certeza, ele realmente comprime arquivos ou é como um arquivo ISO, um arquivo para armazenar arquivos?
tar
compression
O médico
fonte
fonte
Respostas:
O Tar é uma ferramenta de arquivamento (Tape ARchive), ele apenas coleta arquivos e seus metadados e produz um arquivo. Se você deseja compactar esse arquivo posteriormente, poderá usar gzip / bzip2 / xz. Por conveniência, o tar fornece argumentos para compactar o arquivo automaticamente para você. Confira a página do manual tar para obter mais detalhes.
fonte
thing.tar.7z
z
e determine apenas o método de compactação com base na extensão, enquanto o tar GNU possuizZjJ
argumentos separados para os diferentes métodos de compactação.zZjJ
para compactação, como o tar do GNU. No entanto, ele detecta automaticamente a compactação ao descompactar, enquanto o GNU tar esperazZjJ
também.tar
descomprimem automaticamente sem exigir as-zZjJ
opções.tar
produz arquivos; a compactação é uma funcionalidade separada. No entanto, portar
si só, pode reduzir o uso de espaço quando usado em um grande número de arquivos pequenos menores que o tamanho do cluster do sistema de arquivos. Se um sistema de arquivos usar clusters de 1kb, mesmo um arquivo que contenha um único byte consumirá 1kb (mais um inode). Umtar
arquivo não possui essa sobrecarga.Aliás, um arquivo ISO não é realmente "um arquivo para armazenar arquivos" - é na verdade uma imagem de um sistema de arquivos inteiro (um originalmente projetado para ser usado em CDs) e, portanto, sua estrutura é consideravelmente mais complexa.
fonte
O comando tar original do UNIX não compactou arquivos. Como foi mencionado em um comentário, o tar do Solaris não é compactado. Nem o HP-UX, nem o AIX, FWIW. Por convenção, os arquivos não compactados terminam em
.tar
.Com o GNU / Linux, você obtém o tar do GNU. (Você pode instalar o GNU tar em outros sistemas UNIX.) Por padrão, ele não é compactado; no entanto, ele faz comprimir o arquivo resultante com o gzip (também por GNU) se você fornecer
-z
. O sufixo convencional para arquivos compactados com gzip é que.gz
, geralmente, você vê tarballs (gírias para um arquivo tar, geralmente sugerindo que ele foi compactado) que terminam em.tar.gz
. Esse final implica que o tar foi executado, seguido por gzip, por exemplotar cf - .|gzip -9v > archive.tar.gz
. Você também encontrará arquivos terminados em.tgz
, por exemplotar czf archive.tgz .
.Edit: www.linfo.org/tar.html me lembrou que o GNU tar suporta muito mais funcionalidades do que apenas comprimir com o gzip, e me lembrou que os sufixos são mais do que convenções simples. Eles têm semântica integrada. Também suporta bzip2 (
-j
for.bz2
) e compressa antiga (-Z
for.Z
). Então olhei para a página do manual e lembrei que-a
mapeia automaticamente o método de compactação desejado com base no sufixo.Um outro nit. Como diz a página do manual tar do Linux, o GNU produz páginas de informações, não páginas do manual, portanto, para aprender tudo sobre o tar do GNU, execute
info tar
.fonte
O utilitário tar não será compactado até que você dê um argumento para fazê-lo [tar -z file name].
fonte