Tar Gzip Archive (.tar.gz)
POSIX.1 StandardTar Gzip (.tar.gz, tuntud ka kui .tgz) on Linuxi ja avatud lähtekoodiga maailma standardne tarkvara levitamise ja arhiivide pakendamise vorming, mis ühendab Unixi-põhise TAR-pakendi universaalse Gzip-tihendusega.
Kontrolli ja metaandmed
Operatsioonisüsteemid ja failianalüsaatorid tuvastavad TAR.GZ faile, kontrollides algset binaarset baidijada:
Baidi-taseme päise allkiri (maagilised baidid)
Operatsioonisüsteemid ja failianalüsaatorid tuvastavad TAR.GZ faile, kontrollides algset binaarset baidijada:
HEX-ALLKIRI (NIHE 0):
1F 8B 08ASCII-ESITUS: ..\x08
Standardiseerimine: POSIX.1 ustar (RFC 1952 gzip wrapped)
Tehnilised andmed
| Konteineri arhitektuur | POSIX ustar / GNU tar archive stream wrapped inside an RFC 1952 Gzip compression container |
| Tihendamine | Two-stage packaging: TAR serialization followed by DEFLATE compression |
| Baitide järjekord (Endianness) | Little-Endian gzip envelope wrapping octal POSIX tar blocks |
| Värviruumid | N/A (Archive Container) |
| Kanalid ja struktuur | Multi-file Unix directory trees, symlinks, file ownership, and permission bits |
| Max mõõtmed | Unbounded streaming archive size |
| Läbipaistvus | 100% bit-exact lossless preservation of filesystem structures and data |
| Voogedastus ja progressiivsus | End-to-end pipeable streaming: decompress and extract simultaneously in a single pass |
Tehniline võrdlusmaatriks: TAR.GZ vs konkurendid
| Tehniline atribuut | TAR.GZ (Praegune) | ZIP | 7Z | TAR.BZ2 |
|---|---|---|---|---|
| Unixi õigused | 100% omane POSIX-i säilitamine | Piiratud / sageli kaotatud | Põhiatribuudid säilitatud | 100% omane POSIX-i säilitamine |
| Tihendusaste | Mõõdukas (Gzip DEFLATE) | Mõõdukas (ZIP DEFLATE) | Väga kõrge (LZMA2) | Kõrge (Bzip2 BWT) |
| Lahtipakkimise kiirus | Kiire (~300 MB/s) | Kiire (~300 MB/s) | Mõõdukas (~100 MB/s) | Aeglane (~40 MB/s) |
| Linuxi ökosüsteemi standard | Universaalne avatud lähtekoodiga vaikeväärtus | Tarbijate töölaua vaikeväärtus | Windowsi entusiastide lemmik | Pärandatud Linuxi lähtekoodi väljalasked |
Levinud riknemisvead ja heksataaste juhend
Käsurida teatab 'gzip: stdin: invalid compressed data--format violated'.
Juurpõhjus: Kahjustatud baidid Gzip-ümbrikus või katkestatud allalaadimine.
Taastamine: Proovige osalist taastamist, kasutades File2File arhiivieemaldajat või käsku 'tar -izxf broken.tar.gz'.
Turvaanalüüs ja parsimisründevektorid
TAR.GZ arhiivid ühendavad endas nii tihenduspommide kui ka kataloogist väljumise rünnete ohud, kui neid pakutakse lahti hooletult.
Teadaolevad ründavektorid
- Zip-pommi stiilis võimendus, kus pisike .tar.gz-fail paisub terabaitideks nullideks.
- Kataloogist väljumine (nt '../../root/.ssh/authorized_keys'), mis kirjutab üle priviligeeritud failid.
- Pahatahtlike seadmesõlmede loomine lahtipakkimisel juurkasutajana (root).
Kaitsealased parimad tavad:
Ajalooline taust ja verstapostid
Peamised eelised
- Vaieldamatu standard avatud lähtekoodiga koodi väljalasete, Linuxi pakendite ja Dockeri konteinerikihtide jaoks.
- Ühendab täieliku POSIX-õiguste ja sümboolsete linkide säilitamise usaldusväärse ja kiire Gzip-tihendusega.
- Täielikult voogedastatav: saab alla laadida, lahti tihendada ja lahti pakkida võrguvoogude kaudu ilma ajutisi faile kettale kirjutamata.
Tehnilised piirangud ja puudused
- Üheainsa faili lahtipakkimine nõuab kogu arhiivi lahtipakkimist kuni selle faili asukohani.
- Madalam tihendusaste kui kaasaegsetel alternatiividel nagu .tar.xz või .tar.zst.
- Vähem intuitiivne pärandatud Windowsi süsteemides võrreldes universaalsete .zip-failidega.
Huvitavaid tehnilisi fakte
- MS-DOS süsteemides, kus kehtis 8.3 failinime piirang, lühendati '.tar.gz' kujule '.tgz'.
- Iga kord, kui käivitate käsu 'npm install', laadib npm taustal alla ja pakib lahti .tgz (tar.gz) pakette.
- Linuxi kasutajad mäletavad tar.gz faili lahtipakkimise käsku mnemotehnikaga 'eXtract Ze File': tar -xzf file.tar.gz.
Korduma kippuvad tehnilised küsimused
Mis vahe on .tar.gz- ja .zip-failil?
.zip pakib iga faili eraldi ja sisaldab lõpus keskset kataloogi. .tar.gz ühendab kõik failid esmalt üheks voogude jadaks, säilitades täielikud Linuxi õigused ja sümboolsed lingid (symlinks).
Kas .tgz on sama mis .tar.gz?
Jah. .tgz on lihtsalt .tar.gz lühendatud 3-täheline faililaiend, mis loodi algselt lühikeste 8.3 failinime piirangutega operatsioonisüsteemide (nt DOS) jaoks.
Kuidas ma saan Windowsis .tar.gz-faili lahti pakkida?
Saate .tar.gz-failid otse oma veebibrauseris lahti pakkida rakenduse File2File.app abil, ilma et peaksite WinRAR-i või 7-Zip-i installima.