Archiwum Tar Gzip (.tar.gz)
POSIX.1 StandardníTar Gzip (.tar.gz, známý také jako .tgz) kombinuje archiv TAR s kompresí Gzip a běžně se používá k distribuci softwaru a balení souborů.
Kontrola a metadata
Operační systémy a analyzátory souborů identifikují soubory TAR.GZ kontrolou počáteční binární sekvence bajtů:
Podpis hlavičky na úrovni bajtů (Magic Bytes)
Operační systémy a analyzátory souborů identifikují soubory TAR.GZ kontrolou počáteční binární sekvence bajtů:
HEXADECIMÁLNÍ PODPIS (POSUN 0):
1F 8B 08ASCII REPREZENTACE: ..\x08
Standardizace: POSIX.1 ustar (obal Gzip podle RFC 1952)
Technické specifikace
| Architektura kontejneru | Archivní proud POSIX ustar nebo GNU tar zabalený do kompresního kontejneru Gzip podle RFC 1952 |
| Komprese | Balení ve dvou fázích: serializace TAR následovaná kompresí DEFLATE |
| Pořadí bajtů | Obálka Gzip v pořadí little-endian, která obsahuje osmičková pole bloků POSIX tar |
| Barevné prostory | Nevztahuje se (archivní kontejner) |
| Kanály a struktura | Adresářové stromy Unixu s více soubory, symbolickými odkazy, vlastnictvím souborů a bity oprávnění |
| Max. rozměry | Neomezená velikost archivu zpracovatelného proudově |
| Průhlednost | Data souborů se zachovávají beze ztrát; zachování metadat závisí na formátu archivu a nastavení extrakce |
| Streamování a progresivní načítání | Proud lze zpracovat od začátku do konce přes roury: dekomprese i extrakce probíhají současně v jediném průchodu |
Technická srovnávací matice: TAR.GZ vs konkurence
| Technický atribut | TAR.GZ (Aktuální) | ZIP | 7Z | TAR.BZ2 |
|---|---|---|---|---|
| Unixová oprávnění | Ukládá metadata POSIX podporovaná archivem a nástrojem pro extrakci | Omezené / často ztracené | Základní atributy zachovány | Vybraná metadata POSIX podporovaná extraktorem |
| Kompresní poměr | Střední (Gzip DEFLATE) | Střední (ZIP DEFLATE) | Velmi vysoký (LZMA2) | Vysoký (Bzip2 BWT) |
| Rychlost dekomprese | Rychlá (~300 MB/s) | Rychlá (~300 MB/s) | Střední (~100 MB/s) | Pomalá (~40 MB/s) |
| Standard linuxového ekosystému | Běžný formát pro balení open-source softwaru | Výchozí volba pro spotřebitelské desktopy | Oblíbená volba nadšenců do Windows | Starší linuxová vydání zdrojových kódů |
Běžné režimy poškození a příručka pro obnovení v hex
Příkazový řádek hlásí 'gzip: stdin: invalid compressed data--format violated'.
Hlavní příčina: Poškozené bajty v obálce Gzip nebo přerušené stahování.
Obnovení: Pokuste se o částečnou obnovu pomocí nástroje File2File.app Archive Extractor nebo příkazu 'tar -izxf broken.tar.gz'.
Bezpečnostní analýza a vektory útoků na parser
Archivy TAR.GZ v sobě nesou rizika kompresních bomb i útoků typu directory traversal, pokud jsou rozbalovány neopatrně.
Známé vektory útoků
- Zesílení účinku ve stylu kompresní bomby, kde se malý soubor .tar.gz rozbalí v terabyty nul.
- Directory traversal (např. '../../root/.ssh/authorized_keys'), přepisující privilegované soubory.
- Vytvoření škodlivého uzlu zařízení během rozbalování pod oprávněním root.
Doporučené bezpečnostní postupy: Extrahujte archivy jako neprivilegovaní uživatelé a proveďte sanitaci všech cílových cest k souborům proti útokům typu directory traversal.
Historický vývoj a milníky
Klíčové výhody a přednosti
- Softwarové projekty často zveřejňují zdrojové archivy jako .tar.gz, protože TAR seskupuje strom adresářů a Gzip komprimuje proud dat.
- Soubor .tar.gz může v části TAR zaznamenat oprávnění a symbolické odkazy. Jejich obnovení závisí na nástroji pro extrakci a cílovém operačním systému; po rozbalení na jiné platformě proto oprávnění zkontrolujte.
- Plně proudově zpracovatelný: lze jej stahovat, dekomprimovat a rozbalovat přes síťové roury bez zápisu dočasných souborů na disk.
Technická omezení a nevýhody
- Rozbalení jednoho souboru vyžaduje dekompresi celého archivu až po umístění daného souboru.
- Nižší kompresní poměr než u moderních alternativ, jako jsou .tar.xz nebo .tar.zst.
- Na starších systémech Windows se používá méně intuitivně než široce podporovaný formát ZIP.
Zajímavé technické drobnosti
- Na systémech MS-DOS s omezením názvů souborů na formát 8.3 byl formát '.tar.gz' zkrácen na '.tgz'.
- Pokaždé, když spustíte 'npm install', npm stahuje a rozbaluje balíčky .tgz (tar.gz) na pozadí.
- Uživatelé Linuxu si příkaz k rozbalení souboru tar.gz proslule znají díky mnemotechnické pomůcce 'eXtract Ze File': tar -xzf file.tar.gz.
Často kladené technické otázky
Jaký je rozdíl mezi .tar.gz a .zip?
.zip ukládá soubory spolu s centrálním adresářem, zatímco .tar.gz obsahuje proud TAR zabalený do Gzipu. Zachování metadat závisí na archivu a nastavení extrakce.
Je .tgz to samé jako .tar.gz?
Ano. .tgz je jednoduše zkrácená třípísmenná přípona souboru .tar.gz, která byla původně vytvořena pro operační systémy s krátkými limity názvů souborů 8.3, jako byl DOS.
Jak mohu rozbalit soubor .tar.gz ve Windows?
Soubory .tar.gz můžete rozbalit přímo ve svém webovém prohlížeči pomocí aplikace File2File.app bez nutnosti instalace programů WinRAR nebo 7-Zip.