Archivio TAR (.tar)

POSIX.1-1988 Standard

Tape Archive (TAR) è il formato onnipresente di confezionamento di file per Unix e Linux, che raggruppa più file, directory e metadati del file system in un unico flusso non compresso progettato per il backup su nastro magnetico e la distribuzione di software.

Converti da ZIP a TAR

Convertitore gratuito da ZIP a TAR nel browser. Converti i file istantaneamente sul tuo dispositivo.

Ispeziona e metadati

I sistemi operativi e gli analizzatori di file identificano i file TAR ispezionando la sequenza di byte binari iniziale:

Seleziona o rilascia i file qui

Conversione 100% privata nel browser: i file non lasciano mai il tuo dispositivo

o incolla Ctrl+V
Garanzia di privacy con zero trasmissioni di rete: 0 byte caricati su server esterni. Tutta l'elaborazione è avvenuta localmente nella sandbox del tuo browser.

Firma dell'intestazione a livello di byte (Magic Bytes)

I sistemi operativi e gli analizzatori di file identificano i file TAR ispezionando la sequenza di byte binari iniziale:

FIRMA ESADECIMALE (OFFSET 257):

75 73 74 61 72

RAPPRESENTAZIONE ASCII: ustar

Standardizzazione: POSIX.1-1988 (ustar) / POSIX.1-2001 (pax)

Specifiche tecniche

Architettura del containerSequenza di blocchi da 512 byte: un'intestazione di file da 512 byte seguita dai dati del file arrotondati a multipli di 512 byte, terminata da due blocchi di zeri
CompressioneContenitore di archiviazione non compresso (progettato per essere inviato tramite pipe a gzip, bzip2, xz o zstd)
Endianness dei byteCampioni di stringhe ASCII in ottale; estensioni numeriche big-endian
Spazi coloreN/A (Contenitore di archiviazione)
Canali e strutturaAlbero delle directory di file Unix, collegamenti simbolici, collegamenti fisici, dispositivi a caratteri o a blocchi e pipe FIFO
Dimensioni massimeLimite di 8 GB nel formato ustar classico; praticamente illimitato nel moderno formato PAX
TrasparenzaConservazione completa dei permessi dei file POSIX, UID/GID del proprietario, tempi di accesso e attributi estesi
Streaming e progressivoDesign orientato ai flussi sequenziali: può essere scritto direttamente su unità a nastro magnetico fisiche

Matrice di confronto tecnico: TAR vs Concorrenti

Attributo tecnicoTAR (Corrente)ZIP7ZCPIO
Compressione NativaNessuna (puro contenitore di pacchetti)Compressione Deflate integrataCompressione LZMA/LZMA2 integrataNessuna (puro contenitore di pacchetti)
Conservazione Permessi Unix100% attributi POSIX, collegamenti simbolici, UID/GIDSupporto limitato dei permessi UnixConserva i permessi di base100% attributi POSIX
Estrazione in StreamingEstrazione completamente in streaming da pipeRichiede la lettura della directory centrale a fine fileRichiede la lettura dell'intestazione finaleEstrazione completamente in streaming
Accesso Casuale ai FileLento (scansione sequenziale lineare)Istantaneo (ricerca nella directory centrale)Moderato (ricerca tramite indice)Lento (scansione sequenziale lineare)

Modalità di corruzione comuni e guida al recupero Hex

Errore di estrazione: 'tar: Skipping to next header' o 'A lone zero block at X'.

Causa principale: Allineamento del blocco da 512 byte danneggiato o interruzione prematura del flusso.

Ripristino: Estrarre con 'tar -i' per ignorare i blocchi danneggiati o riparare con File2File Tar Tool.

Analisi di sicurezza e vettori di attacco del parser

Gli estrattori TAR devono igienizzare i percorsi dei file per impedire sovrascritture di file arbitrarie tramite attacchi di directory traversal.

Vettori di attacco noti

  • Directory traversal di tipo 'Slip' (es. '../etc/passwd') che sovrascrive file di sistema critici durante l'estrazione.
  • Condizioni di competenza dei collegamenti simbolici (symlink race conditions) che creano collegamenti a directory di sistema seguiti da scritture di file.
  • Denial of service tramite cicli di collegamenti fisici circolari.

Migliori pratiche difensive: Igienizzare rigorosamente i percorsi dei file dell'archivio e rifiutare qualsiasi voce contenente riferimenti alla directory genitrice ('..').

Origini storiche e tappe fondamentali

2001IEEE POSIX.1-2001 introduce lo standard PAX (Portable Archive Interchange), superando i vecchi limiti di dimensione di 8 GB.
1988IEEE POSIX standardizza il formato di intestazione 'ustar' (Unix Standard Tar).
1979Introdotto nella Versione 7 di Unix (V7) dai Bell Labs per scrivere alberi di file su unità a nastro magnetico.

Vantaggi principali e pro

  • Conserva fedelmente la completa fedeltà del file system Unix: permessi POSIX, collegamenti simbolici, collegamenti fisici e proprietà.
  • Design orientato ai flussi su nastro: può essere estratto direttamente da una pipe di rete senza dover cercare la fine del file.
  • Standard universale su tutti i server Linux, immagini di container (Docker/OCI) e distribuzioni software Unix.

Limiti tecnici e svantaggi

  • Nessuna compressione nativa: un file .tar non compresso ha circa la stessa dimensione dei file grezzi combinati.
  • L'accesso casuale è lento: l'estrazione di un singolo file dal centro di un archivio di grandi dimensioni richiede la scansione dall'inizio.
  • Le vecchie intestazioni ustar troncavano i nomi dei file più lunghi di 100 caratteri (risolto nel moderno PAX/GNU tar).

Curiosità tecniche interessanti

  • I byte magici 'ustar' si trovano all'offset di byte 257 all'interno di ogni blocco di intestazione di 512 byte.
  • TAR è stato originariamente scritto per controllare fisicamente unità a nastro a bobina aperta a 9 tracce.
  • Le immagini dei container Docker e OCI sono letteralmente insiemi impilati di archivi .tar standard contenenti i differenziali del file system di root.

Domande tecniche frequenti

Perché il mio file .tar non è compresso?

TAR è solo un archiviatore (raggruppa i file insieme in un unico file) e non comprime autonomamente. Per comprimerlo, affiancalo a gzip per creare un file .tar.gz.

Qual è la differenza tra ustar e GNU tar?

Ustar è lo standard POSIX del 1988 con limiti sui nomi di file di 100 caratteri, mentre GNU tar è un formato esteso che supporta lunghezze di percorso illimitate e file sparsi.

Come posso aprire un file .tar su Windows?

Windows 10 e 11 supportano tar nativamente tramite la riga di comando ('tar -xf file.tar'), oppure puoi estrarlo visivamente usando File2File.app direttamente nel tuo browser web.