Archivio Tar Gzip (.tar.gz)
POSIX.1 StandardTar Gzip (.tar.gz, cunoscut și sub numele de .tgz) este formatul standard pentru distribuția de software și împachetarea arhivelor în lumea Linux și open-source, combinând împachetarea TAR nativă Unix cu compresia universală Gzip.
Inspectează și Metadate
Sistemele de operare și analizatoarele de fișiere identifică fișierele TAR.GZ prin inspectarea secvenței binare inițiale:
Semnătura antetului la nivel de octet (Magic Bytes)
Sistemele de operare și analizatoarele de fișiere identifică fișierele TAR.GZ prin inspectarea secvenței binare inițiale:
SEMNĂTURĂ HEX (OFFSET 0):
1F 8B 08REPREZENTARE ASCII: ..\x08
Standardizare: POSIX.1 ustar (RFC 1952 gzip wrapped)
Specificații tehnice
| Arhitectură container | POSIX ustar / GNU tar archive stream wrapped inside an RFC 1952 Gzip compression container |
| Compresie | Two-stage packaging: TAR serialization followed by DEFLATE compression |
| Endianitatea octeților | Little-Endian gzip envelope wrapping octal POSIX tar blocks |
| Spații de culoare | N/A (Archive Container) |
| Canale și structură | Multi-file Unix directory trees, symlinks, file ownership, and permission bits |
| Dimensiuni maxime | Unbounded streaming archive size |
| Transparență | 100% bit-exact lossless preservation of filesystem structures and data |
| Streaming și progresiv | End-to-end pipeable streaming: decompress and extract simultaneously in a single pass |
Matrice de comparație tehnică: TAR.GZ vs Competitori
| Atribut tehnic | TAR.GZ (Curent) | ZIP | 7Z | TAR.BZ2 |
|---|---|---|---|---|
| Permisiuni Unix | Păstrare 100% nativă POSIX | Limitate / adesea pierdute | Atribute de bază păstrate | Păstrare 100% nativă POSIX |
| Rată de compresie | Moderată (Gzip DEFLATE) | Moderată (ZIP DEFLATE) | Foarte ridicată (LZMA2) | Ridicată (Bzip2 BWT) |
| Viteză de decompresie | Rapidă (~300 MB/s) | Rapidă (~300 MB/s) | Moderată (~100 MB/s) | Lentă (~40 MB/s) |
| Standard în ecosistemul Linux | Implicit universal pentru open-source | Implicit pentru desktopul de consum | Favorit printre entuziaștii Windows | Lansări sursă Linux vechi |
Moduri comune de corupție și ghid de recuperare hexazecimală
Linia de comandă raportează „gzip: stdin: invalid compressed data--format violated".
Cauză principală: Octeți corupți în plicul Gzip sau descărcare trunchiată.
Recuperare: Încercați recuperarea parțială folosind File2File Archive Extractor sau „tar -izxf broken.tar.gz".
Analiză de securitate și vectori de atac asupra parserului
Arhivele TAR.GZ combină riscurile bombelor de compresie și ale atacurilor de parcurgere a directoarelor dacă sunt extrași fără precauție.
Vectori de atac cunoscuți
- Amplificare de tip bombă ZIP, unde un fișier .tar.gz mic se extinde la terabiți de zerouri.
- Parcurgere a directoarelor (de exemplu, „../../root/.ssh/authorized_keys") care suprascrie fișiere privilegiate.
- Creare malițioasă de noduri de dispozitiv în timpul extracției ca root.
Cele mai bune practici de securitate:
Origini istorice și repere
Avantaje cheie și beneficii
- Standardul incontestabil pentru lansări de cod sursă open-source, pachete Linux și straturi de containere Docker.
- Combină păstrarea completă a permisiunilor POSIX și a legăturilor simbolice cu o compresie Gzip rapidă și fiabilă.
- Complet compatibil cu fluxul continuu: poate fi descărcat, decomprimat și despachetat prin conducte de rețea fără a scrie fișiere temporare pe disc.
Limitări tehnice și dezavantaje
- Extragerea unui singur fișier necesită decomprimarea întregii arhive până la locația acelui fișier.
- Rată de compresie mai mică decât alternativele moderne precum .tar.xz sau .tar.zst.
- Mai puțin intuitiv pe sistemele Windows vechi în comparație cu fișierele .zip universale.
Curiozități tehnice interesante
- Pe sistemele MS-DOS cu limite de nume de fișiere 8.3, „.tar.gz" a fost scurtat la „.tgz".
- De fiecare dată când rulați „npm install", npm descarcă și extrage pachete .tgz (tar.gz) în fundal.
- Utilizatorii de Linux își amintesc cu faimă comanda de extragere a unui fișier tar.gz folosind mnemotehnica „eXtract Ze File": tar -xzf file.tar.gz.
Întrebări tehnice frecvente
Care este diferența dintre .tar.gz și .zip?
.zip comprimă fiecare fișier în parte și are un director central la sfârșit. .tar.gz combină toate fișierele într-un singur flux de la început, păstrând permisiunile complete de Linux și legăturile simbolice (symlinks).
Este .tgz același lucru cu .tar.gz?
Da. .tgz este pur și simplu o extensie de fișier abreviată din 3 litere pentru .tar.gz, creată inițial pentru sistemele de operare cu limite scurte de denumire 8.3, cum ar fi DOS.
Cum pot extrage un fișier .tar.gz pe Windows?
Puteți extrage fișiere .tar.gz direct în browserul web folosind File2File.app, fără a instala WinRAR sau 7-Zip.