Cookies voor statistiek en advertenties
We gebruiken cookies voor statistiek en voor advertenties, allebei naar Google. Weigeren verandert niets aan wat je te zien krijgt.Lees de privacypagina
Hier zet je TAR naar GZ om, gratis en zonder account: sleep het bestand hierboven erin en binnen een paar seconden staat het resultaat klaar om te downloaden. Het bestand reist versleuteld naar onze server, wordt daar omgezet en wordt gewist zodra het werk klaar is.
Tot 100 bestanden tegelijk. Verschillende formaten door elkaar is prima.
Ze worden een voor een omgezet en samen in één ZIP gedownload.
TAR naar GZ
Platte TAR’s zijn zeldzamer dan gezipte en duiken op herkenbare plekken op. docker save schrijft er een. Back-upscripts die wel moesten bundelen maar niet comprimeren, schrijven er een. Sommige NAS- en tapeworkflows produceren er een omdat de compressie elders in de keten gebeurt. En mensen maken er per ongeluk een, omdat tar cf en tar czf één teken verschillen.
Het resultaat is een archief dat ruwweg de som is van alles erin plus verrassend veel overhead. Prima op een lokale schijf en duur overal elders. Deze omzetting is het ene repak op deze site waar het antwoord bijna altijd ja is, want er is geen compatibiliteitskosten — .tar.gz is universeler begrepen dan een kale .tar.
De structuur van TAR is uit 1979 en charmant eenvoudig: een header van 512 bytes die een bestand beschrijft, dan het bestand zelf opgevuld tot de volgende grens van 512 bytes, dan de volgende header, en twee blokken nullen aan het eind om het einde te markeren.
De kosten daarvan tonen zich bij kleine bestanden. Een bestand van één byte neemt 1.024 bytes in beslag in een TAR — een volledig headerblok en een volledig dataBlok. Tienduizend configuratiebestanden dragen samen meerdere megabytes headers en opvulling die geen informatie bevatten. Gzip is uitstekend in precies dit: lange reeksen nulbytes comprimeren tot bijna niets.
Gzip gebruikt DEFLATE met een geschiedenisvenster van 32 KB, en dat getal bepaalt alles aan deze omzetting. Binnen elk stuk van 32 KB vindt het herhaalde strings en vervangt ze door verwijzingen, en codeert vervolgens het overige met Huffman. Op proza, code, logs, XML, JSON en configuratie is dat een grote en betrouwbare besparing.
Wat het mist is herhaling op lange afstand. Staat dezelfde licentiekop in tweehonderd bestanden verspreid over een tarball van 40 MB, dan comprimeert gzip die tweehonderd keer apart omdat het er nooit twee tegelijk kan zien. Dat gat is precies waar XZ en 7Z voor bestaan.
Dit is de moeite waard om helder te zeggen, want het verrast mensen die verwachten dat een wikkel om hun bestaande bestand wordt gelegd. De omzetting pakt de geüploade TAR uit, schrijft dan een nieuwe TAR uit de geëxtraheerde inhoud en comprimeert die met gzip. De bestanden erin zijn byte voor byte identiek; de tarball eromheen is een nieuwe.
Twee gevolgen. Ten eerste komt een checksum tegen de originele TAR niet meer overeen, want je hebt die originele TAR niet meer in handen. Ten tweede kan wat de oude container over zijn leden onthield, verschuiven — rechten en tijdstempels zijn de velden die risico lopen.
Een gzip-stroom heeft een headerveld voor de originele bestandsnaam, wat verklaart waarom gunzip backup.gz op een Unix-machine een bestand genaamd backup.tar kan opleveren zonder dat het commando dat zei. Het is een kleine hoffelijkheid van het formaat en de reden dat een gezipt bestand iets minder anoniem is dan een xz- of bzip2-bestand.
Vertrouw er niet op voor iets belangrijks. Veel tools schrijven een generieke naam in dat veld, veel andere negeren het bij het uitpakken. De extensie die je aan de download geeft, is het label dat daadwerkelijk gelezen wordt — maak het dus .tar.gz in plaats van .gz.
Een gzip-stroom wordt van voor naar achter gedecodeerd met een vast venster van 32 KB en geen index, wat een beperking lijkt en de bron van zijn grootste voordeel is. Het betekent dat het archief kan worden geconsumeerd terwijl het binnenkomt: curl https://… | tar xzf - pakt een download uit die nooit op schijf belandt.
De registry markeert dit op het formaat zelf, en het is de reden dat gzip in twintig jaar niet is verdrongen door iets sterkers. Formaten met een groot woordenboek hebben geheugen nodig evenredig ermee; formaten met een centrale directory hebben het eind van het bestand nodig voordat ze het begin kunnen tonen.
De drie staan niet op een ranglijst; ze zitten op verschillende punten van dezelfde curve. Gzip is het snelst te comprimeren en decomprimeren en geeft de kleinste besparing. XZ geeft veruit de grootste besparing op tekst, tegen een grote kost in compressietijd en geheugen. BZ2 zit ertussenin op verhouding, is traag bij decomprimeren, en de registry markeert het als legacy.
Beslis op basis van wat er met het bestand gebeurt. Iets dat herhaaldelijk wordt opgehaald en uitgepakt door machines die je niet beheert, via een pijp — gzip. Iets dat jarenlang in koude opslag ligt en bijna nooit gelezen wordt — XZ.
Niet naar je browser. De meeste tools hier draaien op je eigen apparaat, en archiefrepakking is een van de uitzonderingen, omdat het 7-Zip en gzip als echte programma’s nodig heeft. Het bestand reist over een versleutelde verbinding naar een container die ze draait en geen eigen uitgaande internettoegang heeft.
Elke taak krijgt een scratchmap op een geheugengebaseerd bestandssysteem die wordt gewist zodra de taak eindigt, en alles dat na zestig seconden nog draait, wordt afgebroken. De gratis versie accepteert 25 MB per geüpload bestand, en dit is het paar waar die limiet het hardst aankomt.
tar xzf archief.tar.gz handelt beide lagen in één keer af op macOS, Linux en de BSD’s, en modern Windows levert een tar die hetzelfde doet vanuit PowerShell. Grafische archiveerders op Windows pakken doorgaans alleen de gziplaag uit en laten je met een .tar zitten.
Vergelijk voor je het origineel weggooit de listing: tar tzf op het resultaat tegen tar tf op de bron, zelfde aantal en zelfde paden. Het topniveau is waar je op moet letten, want een archief gepakt van binnen een map en een gepakt van zijn bovenliggende map verschillen op elke regel door een leidende map.
| TAR | GZ | |
|---|---|---|
| Volledige naam | TAR-archief | Gzip-archief |
| Bestandsextensie | .tar | .gz, .tgz |
| Mediatype | application/x-tar | application/gzip |
| Compressie | Geen compressie | Zonder verlies — er gaat niets weg |
| Voor het eerst gepubliceerd | 1979 | 1992 |
| Specificatie | POSIX.1-2001 ustar | RFC 1952 |
| Licentie | Open standaard | Open standaard |
| Stand van zaken | Actueel | Actueel |
| Opent in een browser | Geen browser | Geen browser |
| In plaats daarvan overwogen | ZIP | BZ2, XZ, ZIP |
Er gaat niets verloren. TAR en GZ bewaren hun inhoud verliesvrij: de omzetting wisselt de verpakking, niet de kwaliteit, en je kunt haar herhalen zonder dat schade zich opstapelt.
GZ comprimeert één stroom en kan geen map bevatten. Precies daarom wordt GZ meestal met een archiefformaat gecombineerd: het archief verzamelt de bestanden, GZ comprimeert het resultaat.
7-Zip en Keka lezen zowel TAR als GZ, dus je kunt het resultaat naast het origineel leggen zonder een tweede programma.
GZ pakt dezelfde monsters in ongeveer de helft van de ruimte. Er gaat niets weg — uitpakken geeft het TAR-bestand bit voor bit terug — en daarmee is het de betere plek voor alles wat je wilt bewaren.
TAR verscheen in 1979. Het is vastgelegd in POSIX.1-2001 ustar, en dat is de moeite waard als het bestand het gereedschap moet overleven dat het schreef.
GZ stamt uit 1992, vastgelegd in RFC 1952. gzip, 7-Zip en Keka lezen het formaat.
Ja: deze omzetting heeft software nodig die niet in een browser draait. Het bestand reist versleuteld naar onze server, wordt gewist zodra het werk klaar is en het resultaat na 60 minuten. Het werk wordt gedaan door 7-Zip, de archiveerder, in zijn opdrachtregelvorm.
Ja, tot 100 omzettingen per dag voor bestanden tot 25 MB. Die ene grens bestaat omdat deze omzetting op een server draait die wij betalen. Verder is er hier niets begrensd, en een watermerk komt er in geen geval op. De limiet bestaat omdat 7-Zip een machine van ons nodig heeft om te draaien.
Nee. GZ bewaart dezelfde inhoud zonder iets weg te gooien: het resultaat is in kwaliteit identiek aan het origineel. De bestanden komen er byte voor byte hetzelfde uit. Wat het niet overleeft is wat de houder *over* ze wist en niet wat hij *in* zich had: een wachtwoord, en bij sommige formaten de oorspronkelijke rechten en datums.
GZ comprimeert één stroom en kan geen map bevatten. Precies daarom wordt GZ meestal met een archiefformaat gecombineerd: het archief verzamelt de bestanden, GZ comprimeert het resultaat.
GZ pakt dezelfde monsters in ongeveer de helft van de ruimte. Er gaat niets weg — uitpakken geeft het TAR-bestand bit voor bit terug — en daarmee is het de betere plek voor alles wat je wilt bewaren.
Er gaat niets verloren. TAR en GZ bewaren hun inhoud verliesvrij: de omzetting wisselt de verpakking, niet de kwaliteit, en je kunt haar herhalen zonder dat schade zich opstapelt.