Tar Gzip Archive (.tar.gz)
POSIX.1 StandartsTar Gzip (.tar.gz, pazīstams arī kā .tgz) ir Linux un atklātā koda pasaules standarta programmatūras izplatīšanas un arhīvu iepakošanas formāts, kas apvieno Unix vietējo TAR iepakošanu ar universālo Gzip saspiešanu.
Pārbaudīt un metadati
Operētājsistēmas un failu analizatori identificē TAR.GZ failus, pārbaudot sākotnējo bināro baitu secību:
Baitu līmeņa galvenes paraksts (maģiskie baiti)
Operētājsistēmas un failu analizatori identificē TAR.GZ failus, pārbaudot sākotnējo bināro baitu secību:
HEKSADECIMĀLAIS PARAKSTS (NOBĪDE 0):
1F 8B 08ASCII ATTEIOLOJUMS: ..\x08
Standartizācija: POSIX.1 ustar (RFC 1952 gzip wrapped)
Tehniskās specifikācijas
| Konteinera arhitektūra | POSIX ustar / GNU tar archive stream wrapped inside an RFC 1952 Gzip compression container |
| Saspiešana | Two-stage packaging: TAR serialization followed by DEFLATE compression |
| Baitu secība | Little-Endian gzip envelope wrapping octal POSIX tar blocks |
| Krāsu telpas | N/A (Archive Container) |
| Kanāli un struktūra | Multi-file Unix directory trees, symlinks, file ownership, and permission bits |
| Maks. izmēri | Unbounded streaming archive size |
| Caurspīdīgums | 100% bit-exact lossless preservation of filesystem structures and data |
| Straumēšana un progresīvā ielāde | End-to-end pipeable streaming: decompress and extract simultaneously in a single pass |
Tehniskā salīdzinājuma matrica: TAR.GZ pret konkurentiem
| Tehniskais atribūts | TAR.GZ (Pašreizējais) | ZIP | 7Z | TAR.BZ2 |
|---|---|---|---|---|
| Unix atļaujas | 100% vietējā POSIX saglabāšana | Ierobežotas / bieži pazūd | Pamata atribūti saglabāti | 100% vietējā POSIX saglabāšana |
| Saspiešanas pakāpe | Mērena (Gzip DEFLATE) | Mērena (ZIP DEFLATE) | Ļoti augsta (LZMA2) | Augsta (Bzip2 BWT) |
| Dekompresijas ātrums | Ātrs (~300 MB/s) | Ātrs (~300 MB/s) | Mērens (~100 MB/s) | Lēns (~40 MB/s) |
| Linux ekosistēmas standarts | Universāls atklātā koda noklusējums | Patērētāju darbvirsmas noklusējums | Windows entuziastu favorīts | Mantotie Linux pirmkoda laidieni |
Biežākie bojājumu veidi un heksadecimālās atkopšanas ceļvedis
Komandrinda ziņo 'gzip: stdin: invalid compressed data--format violated'.
Pamatcēlonis: Bojāti baiti Gzip aploksnē vai pārtraukta lejupielāde.
Atkopšana: Mēģiniet veikt daļēju atkopšanu, izmantojot File2File Archive Extractor vai 'tar -izxf broken.tar.gz'.
Drošības analīze un parsētāja uzbrukuma vektori
TAR.GZ arhīvi apvieno gan saspiešanas bumbu, gan direktoriju šķērsošanas uzbrukumu riskus, ja tos izpako bezrūpīgi.
Zināmie uzbrukuma vektori
- Zip bumbas stila pastiprināšana, kur niecīgs .tar.gz fails izplešas terabaitos ar nullēm.
- Direktoriju šķērsošana (piemēram, '../../root/.ssh/authorized_keys'), pārrakstot privilēģiju failus.
- Ļaunprātīga ierīces mezgla izveide izpakošanas laikā kā root.
Aizsardzības labākā prakse:
Vēsturiskā izcelsme un pavērsieni
Galvenās priekšrocības un plusi
- Neapstrīdams standarts atklātā koda pirmkoda laidieniem, Linux pakotnēm un Docker konteineru slāņiem.
- Apvieno pilnīgu POSIX atļauju un simbolisko saišu saglabāšanu ar uzticamu, ātru Gzip saspiešanu.
- Pilnībā straumējams: to var lejupielādēt, dekompresēt un izpakot, izmantojot tīkla caurules, nerakstot pagaidu failus diskā.
Tehniskie ierobežojumi un mīnusi
- Atsevišķa faila izgūšanai ir jādekompresē viss arhīvs līdz attiecīgā faila atrašanās vietai.
- Zemāka saspiešanas pakāpe nekā mūsdienu alternatīvām, piemēram, .tar.xz vai .tar.zst.
- Mazāk intuitīvs mantotajās Windows sistēmās, salīdzinot ar universālajiem .zip failiem.
Interesanti tehniski fakti
- MS-DOS sistēmās ar 8.3 failu nosaukumu ierobežojumiem '.tar.gz' tika saīsināts uz '.tgz'.
- Katru reizi, kad izpildāt 'npm install', npm fonā lejupielādē un izpako .tgz (tar.gz) pakotnes.
- Linux lietotāji slaveni atceras komandu tar.gz faila izgūšanai ar mnemotehniku 'eXtract Ze File': tar -xzf file.tar.gz.
Bieži uzdotie tehniskie jautājumi
Kāda ir atšķirība starp .tar.gz un .zip?
.zip saspiež katru failu atsevišķi, un tā beigās ir centrālais direktorijs. .tar.gz vispirms apvieno visus failus vienā plūsmā, saglabājot pilnas Linux atļaujas un simboliskās saites (symlinks).
Vai .tgz ir tas pats, kas .tar.gz?
Jā. .tgz ir vienkārši saīsināts 3 burtu faila paplašinājums .tar.gz formātam, kas sākotnēji tika izveidots operētājsistēmām ar īsiem 8.3 failu nosaukumu ierobežojumiem, piemēram, DOS.
Kā es varu atpakot .tar.gz failu operētājsistēmā Windows?
Jūs varat atpakot .tar.gz failus tieši savā tīmekļa pārlūkprogrammā, izmantojot File2File.app, neinstalējot WinRAR vai 7-Zip.