Archive Tar Gzip (.tar.gz)
POSIX.1 StandardTar Gzip (.tar.gz, également connu sous le nom de .tgz) est le format de distribution de logiciels et d'empaquetage d'archives standard du monde Linux et open-source, combinant l'empaquetage TAR natif d'Unix avec la compression Gzip universelle.
Inspecter et métadonnées
Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers TAR.GZ en inspectant la séquence d'octets binaires de tête :
Signature d'en-tête au niveau des octets (Magic Bytes)
Les systèmes d'exploitation et les analyseurs de fichiers identifient les fichiers TAR.GZ en inspectant la séquence d'octets binaires de tête :
SIGNATURE HEXADÉCIMALE (DÉCALAGE 0) :
1F 8B 08REPRÉSENTATION ASCII : ..\x08
Normalisation : POSIX.1 ustar (enveloppe gzip RFC 1952)
Spécifications techniques
| Architecture de conteneur | Flux d'archive POSIX ustar / GNU tar enveloppé dans un conteneur de compression Gzip RFC 1952 |
| Compression | Empaquetage en deux étapes : sérialisation TAR suivie d'une compression DEFLATE |
| Boutisme des octets | Enveloppe gzip petit-boutiste enveloppant des blocs tar POSIX octals |
| Espaces colorimétriques | N/A (Conteneur d'archive) |
| Canaux et structure | Arborescences de répertoires Unix multi-fichiers, liens symboliques, propriété des fichiers et bits de permission |
| Dimensions maximales | Taille d'archive en flux illimitée |
| Transparence | Préservation sans perte bit à bit exacte à 100 % des structures de fichiers et des données |
| Streaming et progressif | Flux connectable de bout en bout : décompressez et extrayez simultanément en un seul passage |
Matrice de comparaison technique : TAR.GZ vs Concurrents
| Attribut technique | TAR.GZ (Actuel) | ZIP | 7Z | TAR.BZ2 |
|---|---|---|---|---|
| Permissions Unix | Préservation POSIX native à 100 % | Limité / souvent perdu | Attributs de base préservés | Préservation POSIX native à 100 % |
| Ratio de compression | Modéré (Gzip DEFLATE) | Modéré (ZIP DEFLATE) | Très élevé (LZMA2) | Élevé (Bzip2 BWT) |
| Vitesse de décompression | Rapide (~300 Mo/s) | Rapide (~300 Mo/s) | Modérée (~100 Mo/s) | Lente (~40 Mo/s) |
| Norme de l'écosystème Linux | Par défaut open-source universel | Par défaut pour le grand public | Favori des passionnés de Windows | Versions sources Linux héritées |
Modes de corruption courants et guide de récupération hexadécimale
La ligne de commande indique « gzip: stdin: invalid compressed data--format violated ».
Cause racine: Octets corrompus dans l'enveloppe Gzip ou téléchargement tronqué.
Récupération: Tentez une récupération partielle à l'aide de l'extracteur d'archives File2File ou de « tar -izxf broken.tar.gz ».
Analyse de sécurité et vecteurs d'attaque de l'analyseur
Les archives TAR.GZ combinent les risques de bombes de compression et d'attaques par traversée de répertoire si elles sont extraites sans précaution.
Vecteurs d'attaque connus
- Amplification de style bombe Zip où un minuscule fichier .tar.gz se développe en téraoctets de zéros.
- Traversée de répertoire (par ex. '../../root/.ssh/authorized_keys') écrasant des fichiers privilégiés.
- Création de nœuds de périphériques malveillants lors de l'extraction en tant que root.
Bonnes pratiques de défense: Extrayez les archives en tant qu'utilisateurs non privilégiés et nettoyez tous les chemins de fichiers de destination contre la traversée de répertoire.
Origines historiques et jalons
Principaux avantages
- La norme incontestée pour les publications de code source open-source, les paquets Linux et les couches de conteneurs Docker.
- Combine la préservation complète des permissions POSIX et des liens symboliques avec une compression Gzip fiable et rapide.
- Entièrement diffusable : peut être téléchargé, décompressé et désempaqueté sur des tuyaux réseau sans écrire de fichiers temporaires sur le disque.
Limites techniques
- L'extraction d'un seul fichier nécessite de décompresser toute l'archive jusqu'à l'emplacement de ce fichier.
- Ratio de compression inférieur aux alternatives modernes comme .tar.xz ou .tar.zst.
- Moins intuitif sur les systèmes Windows hérités par rapport aux fichiers .zip universels.
Anecdotes techniques
- Sur les systèmes MS-DOS avec des limites de noms de fichiers 8.3, « .tar.gz » a été raccourci en « .tgz ».
- Chaque fois que vous exécutez « npm install », npm télécharge et extrait des paquets .tgz (tar.gz) en arrière-plan.
- Les utilisateurs de Linux se souviennent traditionnellement de la commande pour extraire un fichier tar.gz grâce au moyen mnémotechnique « eXtract Ze File » : tar -xzf fichier.tar.gz.
Foire aux questions techniques
Quelle est la différence entre .tar.gz et .zip ?
.zip compresse chaque fichier individuellement et possède un répertoire central à la fin. .tar.gz combine tous les fichiers en un seul flux d'abord, préservant ainsi l'intégralité des permissions Linux et des liens symboliques.
.tgz est-il identique à .tar.gz ?
Oui. .tgz est simplement une extension de fichier abrégée à 3 lettres pour .tar.gz, créée à l'origine pour les systèmes d'exploitation ayant des limites de noms de fichiers courtes de type 8.3 comme DOS.
Comment puis-je extraire un fichier .tar.gz sur Windows ?
Vous pouvez extraire des fichiers .tar.gz directement dans votre navigateur web à l'aide de File2File.app sans installer WinRAR ou 7-Zip.