Hva er GZ-filformatet?
En .gz-fil er en komprimert fil produsert av verktøyet GNU zip (gzip). Formatet ble utviklet av Jean-loup Gailly og Mark Adler for GNU-prosjektet, med mål om å skape en patentfri erstatning for den eldre .Z-komprimeringen som ble brukt på UNIX-systemer. .gz-filer lagrer nyttige metadata i filhodet - det opprinnelige filnavnet og et tidsstempel for endring - noe som kan være nyttig hvis filen får nytt navn under komprimeringsprosessen.
Hvor brukes .gz-komprimering?
Filer i .gz-formatet påtreffes ofte i programvarepakker og installasjonsprogrammer for Unix-baserte operativsystemer. Ved siden av installasjonsprogrammer brukes .gz-formatet også hyppig til å komprimere tekstressurser som HTML, CSS og JavaScript på webservere, noe som bidrar til raskere lasting av nettsider. Likevel brukes denne komprimeringsmetoden også for vanlig dataarkivering, så .gz-filer kan også påtreffes av Windows- og macOS-brukere.
Detaljer om .gz-komprimering
Komprimeringsmetoden .gz har én viktig egenskap: et arkiv kan bare inneholde én enkelt fil. Standardmåten å omgå denne begrensningen på er å først bunte sammen flere filer ved hjelp av arkiveringsverktøyet tar, og deretter komprimere resultatet - noe som produserer en .tar.gz eller .tgz-fil. Denne totrinnstilnærmingen er de facto-standarden for distribusjon av kildekode på Linux og macOS.
Sikkerhet og trygghet
RISIKO: LOWGzip-formatet er åpent og trygt, og en .gz-fil er bare komprimerte data som ikke kan kjøre av seg selv. Vanlig forsiktighet for arkiv gjelder: en .gz/.tar.gz fra en utrygg kilde kan inneholde kjørbare filer eller skript som først blir synlige etter utpakking, så skann innholdet før du kjører noe. To tekniske merknader: ekstremt små .gz-filer kan utvides til enorme størrelser («dekompresjonsbomber») - vær på vakt mot mistenkelig små arkiver; og en .tar.gz kan inneholde stier med «../» (en risiko for bane-traversering/«tar slip») - moderne utpakkingsprogrammer beskytter mot dette, men pakk ut ukjente tarballs i en tom mappe.
Formatdetaljer
i et nøtteskallProgrammer som åpner GZ-filer
gunzip file.gz. Tarball: tar -xzf file.tar.gz. Forhåndsinstallert på nesten alle Linux/Unix-systemer. Tekniske detaljer
dyp spesifikasjon| Magic bytes | `1F 8B` ved posisjon 0, etterfulgt av `08` (DEFLATE-metodebyte) |
| Komprimeringsalgoritme | DEFLATE (RFC 1951); metodebyte `08` er den eneste verdien som brukes i praksis |
| MIME-type | `application/gzip` |
| Filer per strøm | Én - `.gz` komprimerer én enkelt inndatafil per strøm |
| Metadata i filhode | Lagrer det opprinnelige filnavnet (FNAME-flagg) og tidsstempel for siste endring av kildefilen |
| Integritetssjekk | CRC-32-sjekksum av de ukomprimerte dataene, skrevet i den 8-byte lange slutten av filen og verifisert ved utpakking |
| Størrelsesfelt | 4-byte ISIZE i slutten av filen inneholder den opprinnelige ukomprimerte størrelsen modulo 2³² |
| Komprimeringsnivåer | Ni nivåer (1 = raskest/minst komprimering, 9 = tregest/best); standard er nivå 6 |
| HTTP-innholdskoding | Brukt som `gzip` Content-Encoding i HTTP/1.1 for komprimering av webrepsonser i sanntid |
| Sammenslåing av strømmer | Flere `.gz`-strømmer kan slås sammen; `gunzip` dekomprimerer dem som én sammenhengende utdata |
| OS-identifikasjon | 1-byte OS-felt i filhodet (f.eks. `03` = Unix, `00` = FAT) identifiserer kildesystemet |
| Flagg i filhode | Flagg-byte kontrollerer valgfrie felt: FNAME, FCOMMENT, FEXTRA og FHCRC (CRC-16-sjekk av filhode) |
| Kryptering | Ingen innebygd - formatet har ingen mekanisme for passordbeskyttelse eller kryptering |
| Konvensjon for flere filer | Bruk `tar` først for å bunte filer, og komprimer deretter: `tar czf archive.tar.gz files/` produserer en `.tar.gz`-tarball |
| Strømmingsdesign | Komprimerer i én enkelt gjennomgang; krever ikke kunnskap om total inndatastørrelse før start |
| Utgitt | 1992 (gzip 1.0); format standardized as RFC 1952 (1996) |
| Åpen standard | Ja · royalty-fri |
| Spesifikasjon | www.rfc-editor.org |
GZ-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om GZ-filer.
Ofte stilte spørsmål
Hvordan åpner jeg en GZ-fil?
gunzip file.gz, eller tar -xzf file.tar.gz for en tarball.Hva er forskjellen mellom .gz og .tar.gz?
Hvordan åpner jeg en GZ-fil på Windows?
Kan jeg opprette en GZ-fil gratis?
gzip/tar innebygd.Hvorfor inneholder GZ-filen min bare én fil når jeg forventet mange?
Hvordan pakker jeg ut en .tar.gz i ett trinn?
tar -xzf archive.tar.gz. I et grafisk grensesnitt vil PeaZip, Keka, Ark og File Roller alle pakke ut både gzip- og tar-lagene i én operasjon.