Archiv TAR (.tar)

POSIX.1-1988 Standardní

Tape Archive (TAR) je všudypřítomný formát pro balení souborů v systémech Unix a Linux, který slučuje více souborů, adresářů a metadat souborového systému do jednoho nekomprimovaného proudu navrženého pro zálohování na magnetickou pásku a distribuci softwaru.

Převést ZIP do TAR

Bezplatný konvertor z ZIP do TAR v prohlížeči. Převeďte soubory okamžitě ve svém zařízení.

Zkontrolovat a metadata

Operační systémy a analyzátory souborů identifikují soubory TAR kontrolou počáteční binární sekvence bajtů:

Vyberte nebo přetáhněte soubory sem

100% soukromá konverze v prohlížeči - soubory nikdy neopustí vaše zařízení

nebo vložte Ctrl+V
Záruka ochrany soukromí s nulovým přenosem po síti: 0 bajtů odesláno na externí servery. Veškeré zpracování probíhalo lokálně v sandboxu vašeho prohlížeče.

Podpis hlavičky na úrovni bajtů (Magic Bytes)

Operační systémy a analyzátory souborů identifikují soubory TAR kontrolou počáteční binární sekvence bajtů:

HEXADECIMÁLNÍ PODPIS (OFFSET 257):

75 73 74 61 72

ASCII REPREZENTACE: ustar

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

Technické specifikace

Architektura kontejneruSequence of 512-byte blocks: 512-byte file header followed by file data rounded up to 512 bytes, ending with two zero blocks
KompreseUncompressed archive container (designed to be piped into gzip, bzip2, xz, or zstd)
Endiantita bajtůOctal ASCII string fields; big-endian numeric extensions
Barevné prostoryN/A (Archive Container)
Kanály a strukturaUnix file directory tree, symlinks, hardlinks, character/block devices, and FIFO pipes
Max. rozměry8 GB limit in classic ustar; practically unlimited in modern PAX format
PrůhlednostFull preservation of POSIX file permissions, owner UID/GID, access times, and extended attributes
Streamování a progresivní načítáníSequential stream-oriented design: can be written directly to physical magnetic tape drives

Technická srovnávací matice: TAR vs konkurence

Technický atributTAR (Aktuální)ZIP7ZCPIO
Nativní kompreseŽádná (čistý balicí kontejner)Vestavěná komprese DeflateVestavěná komprese LZMA/LZMA2Žádná (čistý balicí kontejner)
Zachování oprávnění Unix100% atributy POSIX, symlinky, UID/GIDOmezená podpora oprávnění UnixZachovává základní oprávnění100% atributy POSIX
Proudová extrakce (Streaming)Plně proudová extrakce z roury (pipe)Vyžaduje čtení centrálního adresáře na EOFVyžaduje čtení koncové hlavičkyPlně proudová extrakce
Náhodný přístup k souborůmPomalý (lineární sekvenční sken)Okamžitý (vyhledávání v centrálním adresáři)Mírný (vyhledávání v indexu)Pomalý (lineární sekvenční sken)

Běžné režimy poškození a příručka pro obnovení v hex

Chyba extrakce: 'tar: Skipping to next header' nebo 'A lone zero block at X'.

Hlavní příčina: Poškozené zarovnání 512bajtových bloků nebo předčasné ukončení proudu.

Obnovení: Extrahujte pomocí 'tar -i' pro ignorování poškozených bloků nebo opravte pomocí nástroje File2File Tar Tool.

Bezpečnostní analýza a vektory útoků na parser

Extrahovače formátu TAR musí dezinfikovat cesty k souborům, aby zabránily přepsání libovolných souborů útoky typu directory traversal.

Známé vektory útoků

  • Průchod adresáři typu 'Slip' (např. '../etc/passwd') přepisující kritické systémové soubory během extrakce.
  • Časové podmínky (race conditions) symbolických odkazů vytvářející symbolické odkazy na systémové adresáře následované zápisem souborů.
  • Odepření služby (DoS) prostřednictvím smyček s kruhovými pevnými odkazy.

Doporučené bezpečnostní postupy:

Historický vývoj a milníky

2001IEEE POSIX.1-2001 zavádí standard PAX (Portable Archive Interchange), čímž odstraňuje starší omezení velikosti 8 GB.
1988IEEE POSIX standardizuje formát hlavičky 'ustar' (Unix Standard Tar).
1979Představeno v systému Version 7 Unix (V7) od Bell Labs pro zápis stromů souborů na jednotky magnetických pásek.

Klíčové výhody a přednosti

  • Věrně zachovává kompletní věrnost souborovému systému Unix: oprávnění POSIX, symbolické odkazy, pevné odkazy a vlastníka.
  • Návrh zaměřený na proudové zpracování (streaming): lze rozbalit přímo z mřížky sítě (pipe) bez nutnosti vyhledávání na konci souboru.
  • Univerzální standard napříč všemi servery Linux, kontejnery obrazů (Docker/OCI) a softwarovými distribucemi Unix.

Technická omezení a nevýhody

  • Žádná nativní komprese: nekomprimovaný soubor .tar má přibližně stejnou velikost jako souhrn surových souborů.
  • Náhodný přístup je pomalý: extrakce jednoho souboru uprostřed obrovského archivního souboru vyžaduje skenování od začátku.
  • Starší hlavičky ustar ořezávaly názvy souborů delší než 100 znaků (vyřešeno v moderním PAX/GNU tar).

Zajímavé technické drobnosti

  • Magické bajty 'ustar' se nacházejí na pozici bajtu 257 uvnitř každého 512bajtového bloku hlavičky.
  • Formát TAR byl původně napsán pro fyzické ovládání 9stopých magnetických páskových jednotek s cívkami.
  • Obrazy kontejnerů Docker a OCI jsou doslova vrstvené sady standardních archivů .tar obsahující rozdíly kořenového souborového systému.

Často kladené technické otázky

Proč není můj soubor .tar komprimován?

TAR je pouze archivátor (sdružuje soubory do jednoho souboru) a sám o sobě nekomprimuje. Chcete-li jej zkomprimovat, spárujte jej s gzipem a vytvořte soubor .tar.gz.

Jaký je rozdíl mezi ustar a GNU tar?

Ustar je standard POSIX z roku 1988 s limitem 100 znaků pro názvy souborů, zatímco GNU tar je rozšířený formát podporující neomezenou délku cest a řídké soubory (sparse files).

Jak mohu otevřít soubor .tar ve Windows?

Windows 10 a 11 podporují tar nativně prostřednictvím příkazového řádku („tar -xf file.tar“) nebo jej můžete vizuálně rozbalit pomocí aplikace File2File.app přímo ve vašem webovém prohlížeči.