Arhivă TAR (.tar)

POSIX.1-1988 Standard

Tape Archive (TAR) este formatul omniprezent de împachetare a fișierelor pentru Unix și Linux, care grupează mai multe fișiere, directoare și metadate de sistem de fișiere într-un singur flux necomprimat, conceput pentru copii de rezervă pe bandă magnetică și distribuție de software.

Convertește din ZIP în TAR

Convertor gratuit din ZIP în TAR direct în browser. Convertește fișiere instantaneu pe dispozitivul tău.

Inspectează și Metadate

Sistemele de operare și analizatoarele de fișiere identifică fișierele TAR prin inspectarea secvenței binare inițiale:

Selectează sau plasează fișierele aici

Conversie 100% privată în browser - fișierele nu părăsesc niciodată dispozitivul tău

sau lipește Ctrl+V
Garanție de confidențialitate cu zero transmisie în rețea: 0 octeți încărcați pe servere externe. Toată procesarea a avut loc local în sandbox-ul browserului tău.

Semnătura antetului la nivel de octet (Magic Bytes)

Sistemele de operare și analizatoarele de fișiere identifică fișierele TAR prin inspectarea secvenței binare inițiale:

SEMNĂTURĂ HEX (OFFSET 257):

75 73 74 61 72

REPREZENTARE ASCII: ustar

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

Specificații tehnice

Arhitectură containerSequence of 512-byte blocks: 512-byte file header followed by file data rounded up to 512 bytes, ending with two zero blocks
CompresieUncompressed archive container (designed to be piped into gzip, bzip2, xz, or zstd)
Endianitatea octețilorOctal ASCII string fields; big-endian numeric extensions
Spații de culoareN/A (Archive Container)
Canale și structurăUnix file directory tree, symlinks, hardlinks, character/block devices, and FIFO pipes
Dimensiuni maxime8 GB limit in classic ustar; practically unlimited in modern PAX format
TransparențăFull preservation of POSIX file permissions, owner UID/GID, access times, and extended attributes
Streaming și progresivSequential stream-oriented design: can be written directly to physical magnetic tape drives

Matrice de comparație tehnică: TAR vs Competitori

Atribut tehnicTAR (Curent)ZIP7ZCPIO
Compresie nativăNiciuna (container pur de împachetare)Compresie Deflate încorporatăCompresie LZMA/LZMA2 încorporatăNiciuna (container pur de împachetare)
Păstrarea permisiunilor Unix100% atribute POSIX, legături simbolice, UID/GIDSuport limitat pentru permisiuni UnixPăstrează permisiunile de bază100% atribute POSIX
Extragere în flux continuuExtragere completă în flux din conducteNecesită citirea directorului central la EOFNecesită citirea antetului de sfârșitExtragere completă în flux
Acces aleatoriu la fișiereLent (scanare secvențială liniară)Instantaneu (căutare în directorul central)Moderat (căutare în index)Lent (scanare secvențială liniară)

Moduri comune de corupție și ghid de recuperare hexazecimală

Eroare de extragere: „tar: Skipping to next header" sau „A lone zero block at X".

Cauză principală: Aliniere deteriorată a blocurilor de 512 octeți sau terminare prematură a fluxului.

Recuperare: Extrageți cu „tar -i" pentru a ignora blocurile deteriorate sau reparați cu instrumentul File2File Tar Tool.

Analiză de securitate și vectori de atac asupra parserului

Extracțiile TAR trebuie să igienizeze căile fișierelor pentru a preveni suprascrierile arbitrare de fișiere prin atacuri de parcurgere a directoarelor (directory traversal).

Vectori de atac cunoscuți

  • Parcurgere a directoarelor de tip „Slip" (de exemplu, „../etc/passwd") care suprascrie fișiere de sistem critice în timpul extracției.
  • Condiții de concurență pentru legături simbolice (symlink race conditions) care creează legături către directoare de sistem, urmate de scrieri de fișiere.
  • Refuz de serviciu prin bucle circulare de legături fixe.

Cele mai bune practici de securitate:

Origini istorice și repere

2001Standardul IEEE POSIX.1-2001 introduce standardul PAX (Portable Archive Interchange), depășind limitele vechi de 8 GB ale dimensiunii.
1988IEEE POSIX standardizează formatul de antet „ustar" (Unix Standard Tar).
1979Este introdus în Version 7 Unix (V7) de către Bell Labs pentru a scrie arbori de fișiere pe unități cu bandă magnetică.

Avantaje cheie și beneficii

  • Păstrează cu fidelitate integritatea completă a sistemului de fișiere Unix: permisiuni POSIX, legături simbolice, legături fixe și drepturi de proprietate.
  • Design orientat spre bandă, cu flux continuu: poate fi extras direct dintr-o conductă de rețea fără a fi nevoie să caute la sfârșitul fișierului.
  • Standard universal pe toate serverele Linux, imaginile de containere (Docker/OCI) și distribuțiile de software Unix.

Limitări tehnice și dezavantaje

  • Fără compresie nativă: un fișier .tar necomprimat are aproximativ aceeași dimensiune cu fișierele brute combinate.
  • Accesul aleatoriu este lent: extragerea unui singur fișier din mijlocul unei arhive mari necesită o scanare de la început.
  • Anteturile ustar vechi truncheau numele de fișiere mai lungi de 100 de caractere (problemă rezolvată în versiunile moderne PAX/GNU tar).

Curiozități tehnice interesante

  • Octeții magici „ustar" sunt plasați la offsetul 257 în interiorul fiecărui bloc de antet de 512 octeți.
  • TAR a fost scris inițial pentru a controla fizic unitățile cu bandă magnetică bobină-la-bobină cu 9 piste.
  • Imaginile de containere Docker și OCI sunt, la propriu, seturi suprapuse de arhive standard .tar care conțin diferențele sistemului de fișiere rădăcină.

Întrebări tehnice frecvente

De ce fișierul meu .tar nu este comprimat?

TAR este doar un arhivator (grupează fișierele într-un singur fișier) și nu realizează compresie prin sine însuși. Pentru a-l comprima, asociați-l cu gzip pentru a crea un fișier .tar.gz.

Care este diferența dintre ustar și GNU tar?

Ustar este standardul POSIX din 1988 cu limite de 100 de caractere pentru numele fișierelor, în timp ce GNU tar este un format extins care acceptă lungimi nelimitate ale căilor și fișiere sparse.

Cum pot deschide un fișier .tar pe Windows?

Windows 10 și 11 acceptă tar în mod nativ prin linia de comandă („tar -xf file.tar”) sau îl puteți extrage vizual folosind File2File.app, direct în browserul web.