Archivio TAR (.tar)
POSIX.1-1988 StandardTape Archive (TAR) è un formato di archiviazione ampiamente usato su Unix e Linux. Raggruppa file, directory e metadati selezionati del file system in un flusso non compresso.
Converti da ZIP a TAR
Convertitore gratuito da ZIP a TAR nel browser. Converti i file istantaneamente sul tuo dispositivo.
Ispezione e metadati
I sistemi operativi e gli analizzatori di file identificano i file TAR ispezionando la sequenza di byte binari iniziale:
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 72RAPPRESENTAZIONE ASCII: ustar
Standardizzazione: POSIX.1-1988 (ustar) / POSIX.1-2001 (pax)
Specifiche tecniche
| Architettura del contenitore | Sequenza di blocchi da 512 byte: un'intestazione di file da 512 byte seguita dai dati del file arrotondati a multipli di 512 byte, che termina con due blocchi di zeri |
| Compressione | Contenitore di archivio non compresso (progettato per inviare i dati tramite una pipe a gzip, bzip2, xz o zstd) |
| Endianness dei byte | Campi stringa ASCII in ottale; estensioni numeriche big-endian |
| Spazi colore | N/A (Contenitore di archiviazione) |
| Canali e struttura | Albero delle directory di file Unix, collegamenti simbolici, collegamenti fisici, dispositivi a caratteri o a blocchi e pipe FIFO |
| Dimensioni massime | Limite di 8 GB nel formato ustar classico; praticamente illimitato nel moderno formato PAX |
| Trasparenza | Conservazione completa dei permessi dei file POSIX, dell'UID/GID del proprietario, dei tempi di accesso e degli attributi estesi |
| Streaming e progressivo | Design orientato ai flussi sequenziali: può essere scritto direttamente su unità a nastro magnetico fisiche |
Matrice di confronto tecnico: TAR vs Concorrenti
| Attributo tecnico | TAR (Attuale) | ZIP | 7Z | CPIO |
|---|---|---|---|---|
| Compressione nativa | Nessuna (semplice contenitore di archiviazione) | Compressione Deflate integrata | Compressione LZMA/LZMA2 integrata | Nessuna (semplice contenitore di archiviazione) |
| Conservazione dei permessi Unix | Attributi POSIX selezionati, collegamenti simbolici, UID/GID | Supporto limitato dei permessi Unix | Conserva i permessi di base | Attributi POSIX selezionati |
| Estrazione in streaming | Estrazione completamente in streaming da pipe | Richiede la lettura della directory centrale a fine file | Richiede la lettura dell'intestazione finale | Estrazione completamente in streaming |
| Accesso casuale ai file | Lento (scansione sequenziale lineare) | Istantaneo (ricerca nella directory centrale) | Moderato (ricerca tramite indice) | Lento (scansione sequenziale lineare) |
Modalità di corruzione comuni e guida al recupero esadecimale
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 lo strumento Tar di File2File.app.
Analisi di sicurezza e vettori di attacco del parser
Gli estrattori TAR devono ripulire i percorsi dei file per impedire che attacchi di attraversamento delle directory sovrascrivano file arbitrari.
Vettori di attacco noti
- Attacchi di attraversamento delle directory di tipo 'Slip' (es. '../etc/passwd') che sovrascrivono file di sistema critici durante l'estrazione.
- Condizioni di competizione tra operazioni sui collegamenti simbolici (symlink race conditions) che creano collegamenti a directory di sistema seguiti da scritture di file.
- Attacco di negazione del servizio tramite cicli di collegamenti fisici circolari.
Migliori pratiche difensive: Sanificare rigorosamente i percorsi dei file dell'archivio e rifiutare qualsiasi voce contenente riferimenti alla directory genitrice ('..').
Origini storiche e tappe fondamentali
Vantaggi principali
- TAR può registrare i permessi Unix, i collegamenti simbolici e gli ID dei proprietari. Verifica se l’estrattore ripristina questi campi, soprattutto quando estrai su Windows o su un sistema con regole di autorizzazione diverse.
- Design orientato ai flussi su nastro: può essere estratto direttamente da una pipe di rete senza dover cercare la fine del file.
- I gestori di pacchetti Linux e gli strumenti per container distribuiscono spesso file in archivi TAR, comunemente compressi come .tar.gz o .tar.zst.
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 (limite risolto nei moderni formati PAX e GNU tar).
Curiosità tecniche
- 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 di archivi .tar standard sovrapposti, contenenti le differenze rispetto al file system radice.
Domande tecniche frequenti
Perché il mio file .tar non è compresso?
TAR è solo un programma di archiviazione: raggruppa i file in un unico file ma non li comprime. Per comprimerlo, abbinalo a gzip e crea 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.
Coppie di conversione per TAR correlate
La conversione di un archivio ZIP in un archivio TAR trasforma un contenitore di file compressi in un formato di archivio su nastro non compresso, ideale per ambienti Unix.
La conversione di un archivio TAR in un archivio ZIP trasforma un contenitore Unix non compresso in un formato di file compresso e universalmente accessibile.
La conversione di un archivio TAR in un archivio GZIP racchiude una raccolta di file non compressi in un unico flusso compresso utilizzando l'algoritmo DEFLATE senza perdita di dati per ridurre drasticamente le dimensioni del file.
Estrai i dati TAR da un archivio TAR compresso con GZIP, ad esempio .tar.gz o .tgz.