Qu'est-ce que le format de fichier GZ ?
Un fichier .gz est un fichier compressé produit par l'outil GNU zip (gzip). Le format a été développé par Jean-loup Gailly et Mark Adler pour le Projet GNU, avec l'objectif de créer un remplacement sans brevet pour l'ancienne compression .Z utilisée sur les systèmes UNIX. Les fichiers .gz stockent des métadonnées utiles dans leur en-tête - le nom du fichier d'origine et un horodatage de modification - ce qui peut être utile si le fichier est renommé pendant le processus de compression.
Où la compression .gz est-elle utilisée ?
Les fichiers au format .gz sont couramment rencontrés dans les paquets logiciels et les installateurs pour les systèmes d'exploitation basés sur Unix. Outre les installateurs, le format .gz est également fréquemment utilisé pour compresser des ressources textuelles telles que le HTML, le CSS et le JavaScript sur les serveurs web, ce qui facilite un chargement plus rapide des pages web. Néanmoins, cette méthode de compression est également utilisée pour l'archivage régulier de données, de sorte que les fichiers .gz peuvent également être rencontrés par les utilisateurs de Windows et macOS.
Détails sur la compression .gz
La méthode de compression .gz présente une caractéristique importante : une archive ne peut contenir qu'un seul fichier. La manière standard de contourner cette limitation consiste à regrouper d'abord plusieurs fichiers à l'aide de l'outil d'archivage tar, puis à compresser le résultat - produisant ainsi un fichier .tar.gz ou .tgz. Cette approche en deux étapes est la norme de facto pour la distribution de code source de logiciels sur Linux et macOS.
Sécurité et sûreté
RISQUE : LOWLe format gzip est ouvert et sûr, et un .gz n'est que de la donnée compressée qui ne peut pas s'exécuter seule. La prudence habituelle concernant les archives s'applique : un .gz/.tar.gz provenant d'une source non fiable peut contenir des exécutables ou des scripts qui ne sont révélés qu'après extraction, donc analysez le contenu avant de lancer quoi que ce soit. Deux notes techniques : des fichiers .gz extrêmement petits peuvent atteindre des tailles énormes (« bombes de décompression ») - méfiez-vous des archives étrangement minuscules ; et un .tar.gz peut contenir des chemins avec « ../ » (risque de traversée de chemin ou « tar slip ») - les extracteurs modernes s'en protègent, mais extrayez les tarballs non fiables dans un dossier vide.
Détails du format
en brefProgrammes qui ouvrent les fichiers GZ
gunzip file.gz. Tarball : tar -xzf file.tar.gz. Pré-installé sur pratiquement tous les systèmes Linux/Unix. Détails techniques
spécifications approfondies| Octets magiques | `1F 8B` à l'offset 0, suivi de `08` (octet de méthode DEFLATE) |
| Algorithme de compression | DEFLATE (RFC 1951) ; l'octet de méthode `08` est la seule valeur utilisée en pratique |
| Type MIME | `application/gzip` |
| Fichiers par flux | Un seul - `.gz` compresse un seul fichier d'entrée par flux |
| Métadonnées d'en-tête | Stocke le nom de fichier d'origine (drapeau FNAME) et l'horodatage de dernière modification du fichier source |
| Vérification d'intégrité | Somme de contrôle CRC-32 des données non compressées, écrite dans la fin de fichier de 8 octets et vérifiée lors de l'extraction |
| Champ de taille | Le champ ISIZE de 4 octets à la fin contient la taille originale non compressée modulo 2³² |
| Niveaux de compression | Neuf niveaux (1 = le plus rapide/moins compressé, 9 = le plus lent/meilleure compression) ; le niveau par défaut est 6 |
| Encodage de contenu HTTP | Utilisé comme Content-Encoding `gzip` dans HTTP/1.1 pour compresser les réponses web à la volée |
| Concaténation de flux | Plusieurs flux `.gz` peuvent être concaténés ; `gunzip` les décompresse comme une seule sortie continue |
| Identification de l'OS | Un champ OS d'un octet dans l'en-tête (ex: `03` = Unix, `00` = FAT) identifie le système d'origine |
| Drapeaux d'en-tête | L'octet de drapeaux contrôle les champs optionnels : FNAME, FCOMMENT, FEXTRA et FHCRC (vérification CRC-16 de l'en-tête) |
| Chiffrement | Aucun intégré - le format ne possède pas de mécanisme de protection par mot de passe ou de chiffrement |
| Convention multi-fichiers | Utilisez d'abord `tar` pour regrouper les fichiers, puis compressez : `tar czf archive.tar.gz files/` produit un tarball `.tar.gz` |
| Conception de flux | Compresse en une seule passe vers l'avant ; ne nécessite pas de connaître la taille totale de l'entrée avant de commencer |
| Publié | 1992 (gzip 1.0); format standardized as RFC 1952 (1996) |
| Standard ouvert | Oui · libre de droits |
| Spécification | www.rfc-editor.org |
Conversions GZ
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers GZ.
Foire aux questions
Comment ouvrir un fichier GZ ?
gunzip file.gz, ou tar -xzf file.tar.gz pour un tarball.Quelle est la différence entre .gz et .tar.gz ?
Comment ouvrir un fichier GZ sur Windows ?
Puis-je créer un fichier GZ gratuitement ?
gzip/tar.Pourquoi mon fichier GZ ne contient-il qu'un seul fichier alors que j'en attendais plusieurs ?
Comment extraire un .tar.gz en une seule étape ?
tar -xzf archive.tar.gz. Avec une interface graphique, PeaZip, Keka, Ark et File Roller déballent tous les couches gzip et tar en une seule extraction.