Arhiv Tar Gzip (.tar.gz)

POSIX.1 Standard

TAR Gzip (.tar.gz, poznat i kao .tgz) kombinuje TAR arhivu sa Gzip kompresijom i često se koristi za distribuciju softvera i pakovanje datoteka.

Pregled i metapodaci

Operativni sistemi i analizatori datoteka identifikuju TAR.GZ datoteke proverom početnog binarnog niza bajtova:

Izaberite ili prevucite datoteke ovde

Privatno - datoteke nikada ne napuštaju vaš uređaj

ili nalepite Ctrl+V
Garancija privatnosti: bez prenosa podataka preko mreže 0 bajtova poslato spoljnim serverima. Sva obrada je izvršena lokalno u bezbednom okruženju vašeg pregledača.

Potpis zaglavlja na nivou bajtova (magični bajtovi)

Operativni sistemi i analizatori datoteka identifikuju TAR.GZ datoteke proverom početnog binarnog niza bajtova:

HEKSADECIMALNI POTPIS (OFFSET 0):

1F 8B 08

ASCII REPREZENTACIJA: ..\x08

Standardizacija: POSIX.1 ustar (GZIP omotač prema RFC 1952)

Tehničke specifikacije

Arhitektura kontejneraPOSIX ustar ili GNU tar arhivski tok umotan u Gzip kontejner za kompresiju prema RFC 1952
KompresijaPakovanje u dva koraka: serijalizacija u TAR, a zatim kompresija DEFLATE-om
Bajtni redosled (Endianness)Gzip omotač s malo-endijanskim redosledom bajtova, oko POSIX tar blokova s oktalnim poljima
Prostori bojaNije primenljivo (arhivski kontejner)
Kanali i strukturaUnix stabla direktorijuma s više datoteka, simboličke veze, vlasništvo nad datotekama i bitovi dozvola
Maksimalne dimenzijeNeograničena veličina arhive u strimu
TransparentnostPodaci datoteka se čuvaju bez gubitaka; čuvanje metapodataka zavisi od formata arhive i podešavanja raspakivanja
Strimovanje i progresivno učitavanjeStrimovanje kroz cevi od početka do kraja: dekompresija i raspakivanje istovremeno, u jednom prolazu

Tehnička matrica poređenja: TAR.GZ u odnosu na konkurente

Tehnički atributTAR.GZ (Trenutno)ZIP7ZTAR.BZ2
Unix dozvoleČuva POSIX metapodatke koje podržavaju arhiva i raspakivačOgraničeno / često izgubljenoOsnovni atributi očuvaniRaspakivač može da sačuva odabrane POSIX metapodatke
Stepen kompresijeUmeren (Gzip DEFLATE)Umeren (ZIP DEFLATE)Vrlo visok (LZMA2)Visok (Bzip2 BWT)
Brzina dekompresijeBrzo (~300 MB/s)Brzo (~300 MB/s)Umereno (~100 MB/s)Sporo (~40 MB/s)
Standard Linux ekosistemaČesto se koristi za pakovanje softvera otvorenog kodaPodrazumevani izbor za korisnički desktopOmiljen među Windows entuzijastimaStara izdanja Linux izvornog koda

Uobičajeni režimi oštećenja i vodič za heksadecimalni oporavak

Komandna linija prijavljuje 'gzip: stdin: invalid compressed data--format violated'.

Osnovni uzrok: Oštećeni bajtovi u Gzip omotaču ili prekinuto preuzimanje.

Oporavak: Pokušajte delimično da oporavite arhivu pomoću File2File.app alata za raspakivanje arhiva ili 'tar -izxf broken.tar.gz'.

Bezbednosna analiza i vektori napada parsera

TAR.GZ arhive nose rizike od kompresionih bombi i napada prolaskom kroz direktorijume ako se nepažljivo raspakuju.

Poznati vektori napada

  • Pojačanje u stilu ZIP bombe gde mala .tar.gz datoteka ekspandira u terabajte nula.
  • Prolazak kroz direktorijume (npr. '../../root/.ssh/authorized_keys') kojim se prepisuju privilegovane datoteke.
  • Kreiranje zlonamernih čvorova uređaja tokom raspakivanja sa privilegijama korisnika root.

Najbolje prakse za zaštitu: Ekstrahujte arhive kao neprivilegovani korisnici i očistite sve odredišne putanje datoteka kako biste sprečili izlazak iz direktorijuma.

Istorijat i prekretnice

2015Arhitektura distribucije Docker kontejnera standardizuje slojevite .tar.gz rootfs slike.
1996IETF standardizuje osnovnu Gzip specifikaciju kao RFC 1952.
1993GNU tar dodaje integrisanu opciju „tar -z“, koja olakšava pakovanje datoteka u format .tar.gz.

Ključne prednosti

  • Softverski projekti često objavljuju izvorni kod u .tar.gz arhivama jer TAR grupiše stablo direktorijuma, a Gzip kompresuje tok.
  • .tar.gz može da zabeleži dozvole i simboličke veze u TAR sloju. Vraćanje tih metapodataka zavisi od raspakivača i ciljnog operativnog sistema, pa nakon raspakivanja na drugoj platformi proverite dozvole.
  • Potpuno podržava strimovanje: može se preuzeti, dekompresovati i raspakovati preko mrežnih cevi bez pisanja privremenih datoteka na disk.

Tehnička ograničenja i nedostaci

  • Raspakivanje jedne datoteke zahteva dekompresiju cele arhive sve do lokacije te datoteke.
  • Manji stepen kompresije u odnosu na moderne alternative kao što su .tar.xz ili .tar.zst.
  • Manje intuitivan na starijim Windows sistemima od široko podržanog ZIP formata.

Zanimljivosti

  • Na MS-DOS sistemima sa ograničenjem naziva datoteka 8.3, '.tar.gz' je skraćeno na '.tgz'.
  • Svaki put kada pokrenete 'npm install', npm preuzima i raspakuje .tgz (tar.gz) pakete u pozadini.
  • Linux korisnici se čuveno sećaju komande za raspakivanje tar.gz datoteke uz pomoć mnemotehnike 'eXtract Ze File': tar -xzf file.tar.gz.

Često postavljana tehnička pitanja

Koja je razlika između .tar.gz i .zip?

.zip čuva datoteke uz centralni direktorijum, dok .tar.gz sadrži TAR tok umotan u Gzip. Čuvanje metapodataka zavisi od arhive i podešavanja raspakivanja.

Da li je .tgz isto što i .tar.gz?

Da. .tgz je jednostavno skraćena troslovna ekstenzija za .tar.gz, prvobitno uvedena za operativne sisteme sa ograničenjem imena datoteka na format 8.3, kao što je DOS.

Kako mogu da raspakujem .tar.gz datoteku u operativnom sistemu Windows?

Možete raspakovati .tar.gz datoteke direktno u Vašem veb pretraživaču koristeći File2File.app bez instaliranja WinRAR-a ili 7-Zip-a.