Convertire XZ in GZ

Qui converti XZ in GZ gratis e senza account: trascina il file qui sopra e in un paio di secondi il risultato è pronto da scaricare. Il file viaggia cifrato fino al nostro server, viene convertito lì e viene cancellato appena il lavoro finisce.

  • Dove gira Sul nostro server, perché un browser non fa girare il programma che questo richiede.
  • Senza perdita Non si butta via niente. GZ conserva esattamente ciò che XZ teneva.
  • Limite di dimensione Fino a 25 MB per file, gratis e senza account.
  • Vale la pena saperlo I file escono identici byte per byte. Quello che non sopravvive è ciò che il contenitore sapeva *su* di loro e non ciò che teneva *dentro* di loro: una password e, su alcuni formati, i permessi e le date originali.

Fino a 100 file alla volta. Formati diversi insieme non sono un problema.

Ripubblicare un .tar.xz per chi non può aprirlo

Chi arriva su questa pagina raramente ha creato il file. Un progetto a monte pubblica un .tar.xz, e ora va servito a qualcun altro: replicato su un archivio interno, allegato a una release aziendale, messo dietro un link di download per un pubblico di cui non controlli le macchine né le abitudini. A monte hanno scelto XZ per ottimizzare la banda verso un pubblico tecnico; tu stai ottimizzando per chiunque clicchi il link.

L’altra versione è un runtime piuttosto che una persona. Uno script Python o Go apre gzip con un import di libreria standard e ha bisogno di una dipendenza o di un sottoprocesso per qualunque altra cosa; una funzione serverless o un’immagine container irrigidita spesso non può averne una. In entrambi i casi il vincolo è esterno, e per chiunque non lo abbia il consiglio onesto resta lasciare l’XZ com’è.

Perché DEFLATE è ovunque e LZMA2 no

Il vantaggio di gzip non è tecnico, è storico, e si accumula. DEFLATE fu pubblicato come RFC 1951 nel maggio 1996 e il contenitore gzip come RFC 1952 nello stesso mese; lo stesso algoritmo sta dentro PNG, dentro ogni file ZIP, dentro l’intestazione HTTP Content-Encoding: gzip, dentro un oggetto Git. Qualunque piattaforma già fa una di queste cose ha già un’implementazione DEFLATE, quindi esporre un lettore gzip non costa nulla.

XZ, dal 2009, non ha avuto un veicolo del genere. È un formato eccellente e va installato come tale. Su Linux è banale, perché il gestore pacchetti già ne dipende; altrove è una decisione che qualcuno deve prendere consapevolmente. Quando consegni un file a un ambiente sconosciuto, questa differenza è tutta la domanda.

Cosa comprava la finestra più ampia, e cosa restituisci

Il divario tra i due formati è un solo numero: DEFLATE di gzip cerca in una finestra di 32 KB, e LZMA2 di XZ lavora con un dizionario fino a 64 MB. Quando gzip sta comprimendo il byte un milione può guardare indietro fino al byte novecentosessantottomila e non oltre; XZ può ancora vedere l’inizio dell’archivio.

Su archivi di molti file simili non è una differenza marginale. Duecento file sorgente con la stessa intestazione di licenza, un anno di righe di log che ricalcano gli stessi quaranta modelli — XZ impara ogni pattern una volta sola, gzip lo reimpara di continuo. Dove l’archivio contiene già JPEG o MP4, invece, questa conversione costa quasi nulla.

Streaming, e ciò che gzip sa fare e XZ no

Gzip decodifica dall’inizio alla fine con una finestra fissa di 32 KB e nessun indice, ed è da qui che nasce la sua proprietà più utile: un tarball gzippato può essere consumato man mano che arriva. Un download che non tocca mai il disco, un server che comprime una risposta non ancora terminata, uno spedizioniere di log che comprime al volo senza sapere quanto ne arriverà ancora.

Anche XZ si può trasmettere in streaming, ma la memoria che serve è proporzionale al suo dizionario invece che fissa. Una pipeline dove il consumatore è piccolo — un dispositivo embedded, un contenitore con memoria limitata — può consumare uno stream gzip di lunghezza qualsiasi e potrebbe non riuscire a consumare uno stream xz.

Il tarball ricostruito, e come replicare una release con onestà

La conversione estrae l’archivio e scrive un TAR nuovo dai contenuti prima di comprimerlo. Ogni file dentro esce identico byte per byte — è un rimpacchettamento senza perdite — ma il tarball è nuovo, quindi l’ordine dei membri, le date registrate e i permessi possono differire da quelli a monte, e nessuna checksum pubblicata verificherà contro il risultato.

Per una replica è una questione di presentazione, non di correttezza. Pubblica una tua checksum del file che stai realmente servendo, e dichiara che l’artefatto canonico resta il .tar.xz a monte con la sua firma. Quello che non va fatto è distribuire un file rimpacchettato con l’hash originale o lasciare intendere che siano lo stesso oggetto.

Il nome che gzip riscrive dentro il file

Una piccola cosa migliora in questa direzione. Uno stream gzip ha un campo di intestazione per il nome originale del file, uno stream xz non ha nulla del genere — xz memorizza un controllo di integrità e niente sulla provenienza. Questa asimmetria è il motivo per cui scompattare un .gz può restituire un file con un nome sensato mentre scompattare un .xz lascia spesso un file senza estensione che si rivela essere un archivio.

È una cortesia, non una garanzia: molti strumenti scrivono un nome generico nel campo e molti altri lo ignorano in estrazione. L’estensione resta ciò che verrà effettivamente letta, quindi conviene chiamare il download .tar.gz prima di pubblicarlo.

Quando BZ2 è un ripiego migliore di GZ

Se il vincolo è puramente di memoria e non di disponibilità, bzip2 merita di essere considerato al posto di gzip: lavora in blocchi indipendenti di al massimo 900 KB, quindi serve pochissimo per scompattarlo, e comprime meglio di gzip sul testo. Il costo è il tempo di decompressione, perché disfare una trasformazione di Burrows-Wheeler è calcolo vero, non semplice movimento di dati.

La domanda giusta è quale guasto stai davvero aggirando. Qualcosa ha segnalato di non poter allocare memoria, su un dispositivo lento con tempo a disposizione — bzip2 è una risposta ragionevole. Qualcosa non ha riconosciuto il formato, o stai consegnando il file a persone e non a macchine — gzip, senza esitazione.

Dove viene ricompattato l’archivio e per quanto tempo

Sul nostro server, non nel tuo browser. La maggior parte degli strumenti su questo sito converte sul tuo dispositivo e lo dichiara apertamente; il lavoro sugli archivi è una delle eccezioni, perché richiede 7-Zip, xz e gzip come programmi veri. Il file viaggia su una connessione cifrata verso un contenitore che li esegue e non ha accesso a internet in uscita.

Ogni lavoro riceve una cartella temporanea su un filesystem in memoria, distrutta appena il lavoro finisce comunque vada, e interrotto dopo sessanta secondi perché un archivio malformato mette un compressore in loop più spesso di quanto lo faccia fallire. Il livello gratuito accetta 25 MB per file caricato, e l’archivio viene rifiutato prima dell’estrazione se dichiara un’espansione oltre 2 GB.

Come convertire XZ in GZ

  1. Trascina il tuo file XZ su questa pagina, oppure fai clic per sceglierne uno.
  2. Scegli GZ come destinazione e avvia la conversione.
  3. Scarica il file GZ finito.

XZ o GZ: cosa cambia

XZ a confronto con GZ
XZGZ
Nome completoArchivio XZArchivio Gzip
Estensione del file.xz.gz, .tgz
Tipo di mediaapplication/x-xzapplication/gzip
CompressioneSenza perdita — non si butta via nienteSenza perdita — non si butta via niente
Prima pubblicazione20091992
SpecificaRFC 1952
LicenzaStandard apertoStandard aperto
Situazione attualeAttualeAttuale
Si apre nel browserNessun browserNessun browser
Valutato al suo postoBZ2, 7ZBZ2, ZIP

Che cosa resta

Non si scarta nulla. XZ e GZ salvano il contenuto senza perdita: la conversione cambia la confezione, non la qualità, e si può ripetere senza che i danni si accumulino.

Aprire il risultato

7-Zip e Keka leggono sia XZ sia GZ, quindi puoi confrontare il risultato con l'originale senza un secondo programma.

Dimensione e qualità

GZ lavora su 32 KB alla volta contro 8 MB di XZ: la ripetizione deve cadere tutta dentro questo spazio perché possa essere compressa via. Da lì viene la differenza di compressione e per questo è il più rapido dei due.

A che cosa serve ciascun formato

GZ risale al 1992, descritto in RFC 1952. gzip, 7-Zip e Keka lo leggono.

GZ è stato pubblicato nel 1992 e XZ nel 2009. Il più vecchio è in genere il file più sicuro da consegnare; il più recente fa lo stesso lavoro con meno byte.

Da XZ a GZ: domande frequenti

Il mio file XZ viene caricato da qualche parte?

Sì: questa conversione ha bisogno di un software che in un browser non può girare. Il file viaggia cifrato fino al nostro server, viene cancellato appena il lavoro finisce e il risultato dopo 60 minuti. Il lavoro lo fa 7-Zip, l’archiviatore, nella sua forma da riga di comando.

Convertire XZ in GZ è gratis?

Sì, fino a 100 conversioni al giorno per file fino a 25 MB. Quell’unico limite esiste perché questa conversione gira su un server che paghiamo noi. Per il resto qui non c’è niente di limitato, e la filigrana non c’è in nessun caso. Il limite esiste perché 7-Zip ha bisogno di una nostra macchina per girare.

Si perde qualità convertendo XZ in GZ?

No. GZ conserva lo stesso contenuto senza buttare via niente: il risultato è identico in qualità all’originale. I file escono identici byte per byte. Quello che non sopravvive è ciò che il contenitore sapeva *su* di loro e non ciò che teneva *dentro* di loro: una password e, su alcuni formati, i permessi e le date originali.

La conversione da XZ a GZ è senza perdita?

Non si scarta nulla. XZ e GZ salvano il contenuto senza perdita: la conversione cambia la confezione, non la qualità, e si può ripetere senza che i danni si accumulino.

Altro su questi formati