aspose.info
PT

TAR - Formato de arquivo de arquivo Unix

Atualizado em

O que é um arquivo TAR?

Arquivos com extensão .tar são arquivos criados com utilitário baseado em Unix para coletar um ou mais arquivos. Vários arquivos são armazenados em um formato não compactado com o suporte de adicionar arquivos e pastas ao arquivo. O utilitário TAR no Unix é baseado em comandos, mas os arquivos criados são suportados pela maioria dos sistemas de arquivamento de arquivos em quase todos os sistemas operacionais. Foi criado pela primeira vez em 1979 pelos Laboratórios AT&T Bell e as versões subsequentes foram publicadas com o passar do tempo.

Formato de arquivo TAR

TAR é um formato de arquivo aberto com especificações completas disponíveis para referência do desenvolvedor. Sua estrutura de arquivos foi padronizada no POSIX.1-1988 e posteriormente no POSIX.1-2001. Os conjuntos de dados criados pelo tar retêm informações sobre os parâmetros do sistema de arquivos, como:

  • Nome
  • Carimbos de tempo
  • Propriedade
  • Permissões de acesso a arquivos
  • Organização do diretório

Um arquivo Tar não tem nenhum número mágico. Ele contém uma série de blocos onde cada bloco é de bytes BLOCKSIZE.

Cada arquivo arquivado é representado por um bloco de cabeçalho que descreve o arquivo, seguido por zero ou mais blocos que fornecem o conteúdo do arquivo. No final do arquivo há dois blocos de 512 bytes preenchidos com zeros binários como marcador de final de arquivo. Um sistema razoável deve escrever tal marcador de fim de arquivo no final de um arquivo, mas não deve assumir que tal bloco existe ao ler um arquivo. Em particular, o GNU tar sempre emite um aviso se não encontrá-lo.

Os blocos podem ser bloqueados para operações físicas de E/S. Cada registro de n blocos (onde n é definido pela opção blocking-factor = 512-size para tar) é gravado com uma única operação “write()”. Em fitas magnéticas, o resultado de tal gravação é um único registro. Ao escrever um arquivo, o último registro de blocos deve ser escrito em tamanho real, com os blocos após o bloco zero contendo todos os zeros. Ao ler um arquivo, um sistema razoável deve tratar adequadamente um arquivo cujo último registro seja mais curto que o restante, ou que contenha registros de lixo após um bloco zero.

Cabeçalho de alcatrão

Como qualquer outro cabeçalho de arquivo, o registro de cabeçalho do arquivo tar contém metadados sobre um arquivo e é mostrado na tabela a seguir.

Deslocamento do campoTamanho do campo (Bytes)Campo
0100Nome do arquivo
1008Modo de arquivo
1088ID de usuário numérico do proprietário
1168ID de usuário numérico do grupo
12412Tamanho do arquivo em bytes (base octal)
13612Hora da última modificação no formato numérico Unix (octal)
1488Soma de verificação para registro de cabeçalho
1561Indicador de link (tipo de arquivo)
157100Nome do arquivo vinculado

Os campos não utilizados são preenchidos com bytes NUL. Um cabeçalho é composto por 257 bytes que são preenchidos com bytes NUL para preencher o registro de 512 bytes.

Referências

Veja também