Che cos'è il formato di file TAR?
.tar è l'estensione di file per il formato standard Unix Tape Archive, chiamato anche «tarball». I file TAR sono supportati su praticamente tutti i sistemi operativi moderni. TAR di per sé non comprime: raggruppa più file e directory in un singolo archivio preservando i permessi dei file Unix, la proprietà, i collegamenti simbolici e i timestamp, motivo principale per cui rimane il contenitore preferito sui sistemi Linux e Unix.
Gli archivi TAR sono comunemente abbinati a un livello di compressione. La combinazione più popolare utilizza gzip, producendo file .tar.gz (spesso scritti come file_name.tar.gz o abbreviati in .tgz). Altre varianti stratificate comuni includono .tar.bz2 e .tar.xz. La maggior parte dei moderni strumenti di archiviazione gestisce automaticamente la decompressione e l'estrazione insieme.
Il formato è nato nel 1979 come parte della Versione 7 di Unix e da allora è stato standardizzato tramite POSIX come formati ustar (1988) e pax (2001). Internamente, un file .tar è una sequenza di blocchi da 512 byte: ogni elemento inizia con un blocco di intestazione contenente il nome del file, i permessi, la dimensione e il checksum, seguito dai dati del file riempiti fino a un limite di 512 byte. Due blocchi riempiti di zeri segnano la fine dell'archivio. Poiché non aggiunge sovraccarico di compressione, TAR impacchetta e spacchetta rapidamente, e la maggior parte degli strumenti di scansione degli archivi gestisce i file .tar senza difficoltà.
Sicurezza e incolumità
RISCHIO: LOWIl formato TAR è aperto e un .tar non può eseguirsi da solo. Si applica la cautela standard per gli archivi: un tarball proveniente da una fonte non attendibile può contenere script o eseguibili rivelati solo dopo l'estrazione, quindi scansiona i contenuti prima di eseguire qualsiasi cosa. Due note specifiche per tar: un tar malevolo può contenere «../» o percorsi assoluti (il classico attacco «tar slip» / path-traversal che scrive file al di fuori della cartella di destinazione) - estrai i tarball non attendibili in una directory vuota e usa un estrattore moderno che rimuova gli slash iniziali; inoltre un .tar.gz compresso può essere una «bomba di decompressione» che si espande a dimensioni enormi, quindi diffida degli archivi sospettosamente piccoli.
Dettagli del formato
in sintesiProgrammi che aprono file TAR
tar -xf file.tar (o tar -xzf file.tar.gz). bsdtar è incluso in Windows dalla build 17063 (2018). tar -xf file.tar per estrarre, tar -xzf file.tar.gz per un tarball gzip, tar -cf out.tar dir/ per creare. Preinstallato su ogni sistema Linux/Unix. Dettagli tecnici
specifiche approfondite| Tipo MIME | application/x-tar (anche application/x-gtar) |
| Struttura del file | Blocchi sequenziali da 512 byte; ogni elemento ha un'intestazione da 512 byte seguita dai dati del file riempiti fino a un limite di 512 byte |
| Varianti del formato | v7 (1979, originale), POSIX ustar (1988), GNU tar, POSIX pax (2001) - differiscono nella gestione dei nomi lunghi, dei file di grandi dimensioni e dei timestamp |
| Compressione | Nessuna - .tar non è compresso; la compressione viene aggiunta da un livello esterno (.tar.gz, .tar.bz2, .tar.xz, .tar.zst) |
| Magic bytes | Stringa ASCII «ustar» all'offset di byte 257 nell'intestazione da 512 byte; assente negli archivi v7 pre-POSIX, che vengono identificati tramite euristiche del checksum dell'intestazione |
| Checksum dell'intestazione | Checksum ottale ASCII da 8 byte per ogni elemento che copre il blocco di intestazione da 512 byte; nessun checksum o firma per l'intero archivio |
| Codifica dei campi numerici | Stringhe ottali ASCII (non interi binari); pax e GNU tar utilizzano la codifica base-256 per i valori che superano l'intervallo ottale |
| Marcatore di fine archivio | Due blocchi consecutivi da 512 byte riempiti di zeri (null) alla fine dell'archivio |
| Lunghezza del nome file | 100 byte in v7; 255 byte con il campo prefisso ustar; illimitata tramite intestazioni estese pax o record GNU long-name |
| Limite dimensione per file | Fino a ~8 GB con la codifica ottale ASCII standard; effettivamente illimitata con il formato pax o la codifica GNU base-256 |
| Metadati preservati | Permessi Unix (bit di modalità), proprietà UID/GID, timestamp di modifica, collegamenti simbolici, collegamenti fisici, file di dispositivo e speciali |
| Crittografia | Nessuna integrata; la crittografia viene applicata da un wrapper esterno come gpg |
| Estensioni stratificate comuni | .tar.gz / .tgz, .tar.bz2 / .tbz2, .tar.xz / .txz, .tar.zst |
| Supporto piattaforma | Nativo su Linux, Unix, BSD e macOS; disponibile su Windows 10 e 11 tramite tar.exe integrato e strumenti di terze parti come 7-Zip |
| Rilasciato | 1979 (Version 7 Unix); standardized as POSIX ustar (1988) and pax (2001) |
| Ultima versione | POSIX.1-2001 pax format; GNU tar and bsdtar (libarchive) extensions in active use |
| Standard aperto | Sì · royalty-free |
| Specifica | pubs.opengroup.org |
Conversioni TAR
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file TAR.
Domande frequenti
Come si apre un file TAR?
tar -xf file.tar (o fai semplicemente doppio clic su macOS). Su Windows, usa il comando integrato tar -xf file.tar, oppure i gratuiti 7-Zip/PeaZip (tasto destro > Estrai). Per un .tar.gz usa tar -xzf file.tar.gz.Qual è la differenza tra .tar e .tar.gz?
Come si apre un file TAR su Windows?
tar - esegui tar -xf file.tar in un terminale. Per un'interfaccia grafica, installa i gratuiti 7-Zip o PeaZip e fai tasto destro > Estrai. Per i .tar.gz potresti dover estrarre due volte (gz e poi tar).Il formato TAR comprime i file?
Perché il mio .tar.gz deve essere estratto due volte?
tar -xzf, PeaZip, Keka); altri rimuovono prima il livello gzip (lasciando un .tar) e necessitano di una seconda estrazione.Posso creare un file TAR gratuitamente?
tar è integrato in Linux e macOS, e anche Windows 10/11 lo include. Anche gli strumenti grafici gratuiti 7-Zip, PeaZip e Keka creano .tar e .tar.gz.