Cookie di statistica e di pubblicità
Usiamo cookie di statistica e di pubblicità, entrambi inviati a Google. Rifiutare non cambia niente di quello che vedi.Leggi la pagina sulla privacy
Qui converti TAR in BZ2 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.
Fino a 100 file alla volta. Formati diversi insieme non sono un problema.
Vengono convertiti uno dopo l’altro e scaricati insieme in uno ZIP.
TAR in BZ2
Quasi tutti quelli che arrivano qui gliel’hanno detto. Una ricetta di pacchetto elenca .tar.bz2 tra le sue sorgenti e calcola un hash contro di esso. Il processo di rilascio di un progetto produce quell’estensione dal 2006 e la pagina download, i mirror e gli script di build di terzi vi puntano tutti.
Nessuno di questi cambierà per un archivio, e nessuno ha torto a resistere al cambiamento — il nome di un artefatto fa parte di un contratto che altri hanno costruito sopra. Questo rende una conversione di conformità, e merita di essere inquadrata come tale piuttosto che travestita da ottimizzazione. Se scegliete liberamente e nulla a valle importa, il consiglio onesto è chiudere questa pagina e scegliere gzip per la velocità o XZ per la dimensione.
Bzip2, dal 1996, fa qualcosa di strutturalmente diverso da entrambi i suoi vicini. Taglia l’input in blocchi fino a 900 KB e applica a ciascuno una trasformata di Burrows–Wheeler, che riordina i byte così che contesti identici finiscano adiacenti. Un passaggio move-to-front e la codifica Huffman poi comprimono le sequenze risultanti.
Il registro registra il blocco da 900 KB come la sua finestra, ed è il confronto equo con i 32 KB di gzip: dentro un blocco, bzip2 vede molto più contesto di quanto gzip possa mai vedere, motivo per cui vince sul testo. È anche il confronto equo con il dizionario da 64 MB di XZ, dove bzip2 perde.
La compressione è lenta perché l’ordinamento è costoso, e quella è la parte che pagate una volta, su una macchina che non vi sta aspettando. È sopportabile. La decompressione è la sorpresa: annullare un ordinamento a blocchi è lavoro reale, a differenza di annullare una corrispondenza a finestra scorrevole.
È ciò che rende il formato una scelta scarsa per qualunque cosa recuperata e scompattata ripetutamente. Una dipendenza scaricata a ogni esecuzione CI, un livello container, un artefatto scaricato da cento macchine — ognuna paga il costo di decompressione ogni volta, e si misura in minuti su un archivio grande piuttosto che secondi.
Memoria alla decompressione. Bzip2 lavora in blocchi di al massimo 900 KB, quindi il buffer di cui ha bisogno per scompattare qualunque cosa è piccolo e fisso indipendentemente da quanto sia grande l’archivio. XZ ha bisogno di memoria scalata al dizionario con cui il file è stato scritto, fino a 64 MB — e se la macchina non può fornirla, l’archivio non si apre affatto.
Conta in un insieme di posti più ristretto di un tempo, ma i posti sono reali: router e apparecchi embedded, container con memoria limitata, ambienti di recupero, un initramfs, un vecchio sistema che nessuno può aggiornare.
BZ2 comprime esattamente uno stream. Non ha campo per un nome file, nessuna nozione di directory e nessun modo di segnare dove finisce un membro e inizia il successivo — il registro elenca l’assenza di struttura di directory tra i problemi noti del formato. Tutto ciò che un elenco di un .tar.bz2 vi mostra viene letto dal TAR al suo interno.
Quindi la conversione scompatta ciò che avete inviato, scrive un TAR fresco dai contenuti, e lo comprime con bzip2. Il download arriva con estensione .bz2 e andrebbe rinominato in .tar.bz2, il che permette a tar xjf di fare l’intero lavoro in un comando.
I blocchi di bzip2 sono compressi indipendentemente l’uno dall’altro, il che dà al formato una proprietà che i suoi vicini non hanno: il danno a un blocco non distrugge necessariamente tutto ciò che segue. Esistono strumenti che percorrono un file bzip2 corrotto, trovano i confini dei blocchi intatti e recuperano ciò che è ancora leggibile.
Trattatelo come una consolazione piuttosto che una strategia. Il TAR all’interno è uno stream continuo di intestazioni e dati, quindi recuperare alcuni blocchi e non altri dà un tarball con buchi, e se ciò produce file utilizzabili dipende interamente da dove è caduto il danno.
La conversione non avvolge bzip2 attorno al file che avete caricato. Estrae il TAR e ne scrive uno nuovo, poi lo comprime. I file all’interno sono identici byte per byte — è un reimpacchettamento senza perdite — ma l’archivio attorno a loro è nuovo, e l’ordine dei membri, le marche temporali e i bit di permesso possono differire.
Per chi impacchetta pacchetti è il dettaglio che decide se questo strumento è quello giusto. Se la ricetta controlla un hash dell’artefatto, l’artefatto deve essere prodotto in modo deterministico su una macchina che controllate.
Sul nostro server, non nel vostro browser. Molti strumenti su questo sito convertono sul vostro dispositivo; il lavoro sugli archivi è una delle eccezioni, perché richiede programmi reali. Il file passa su una connessione crittata a un container che esegue 7-Zip e bzip2, senza accesso internet in uscita.
Ogni lavoro ottiene una directory temporanea su un filesystem in memoria, cancellata al termine del lavoro, e qualunque lavoro ancora in esecuzione dopo sessanta secondi viene terminato. Quel timeout è più probabile da raggiungere qui che sulla maggior parte delle altre coppie, perché la compressione bzip2 è lenta. Il livello gratuito accetta 25 MB per file caricato.
L’unica cifra di rapporto onesta è quella misurata sui vostri dati, e ottenerla richiede due minuti: comprimete lo stesso TAR come GZ, come BZ2 e come XZ e mettete le tre dimensioni fianco a fianco. Su un albero sorgente o un insieme di log l’ordine sarà prevedibile — XZ più piccolo, BZ2 dopo, GZ più grande — ma i divari variano enormemente con i contenuti.
Poi pesate i numeri che non vedete in un elenco file. Quanto spesso verrà scompattato, e da cosa? Gzip se la risposta è “costantemente, da macchine”. XZ se la risposta è “quasi mai, da un computer normale”. BZ2 se qualcosa lo ha specificato, o se la macchina all’altro capo ha pochissima memoria.
| TAR | BZ2 | |
|---|---|---|
| Nome completo | Archivio TAR | Archivio Bzip2 |
| Estensione del file | .tar | .bz2 |
| Tipo di media | application/x-tar | application/x-bzip2 |
| Compressione | Senza compressione | Senza perdita — non si butta via niente |
| Prima pubblicazione | 1979 | 1996 |
| Specifica | POSIX.1-2001 ustar | — |
| Licenza | Standard aperto | Standard aperto |
| Situazione attuale | Attuale | Vecchio, ancora letto ovunque |
| Si apre nel browser | Nessun browser | Nessun browser |
| Valutato al suo posto | ZIP, GZ | GZ, XZ |
Non si scarta nulla. TAR e BZ2 salvano il contenuto senza perdita: la conversione cambia la confezione, non la qualità, e si può ripetere senza che i danni si accumulino.
BZ2 comprime un singolo flusso e non può contenere una cartella. È proprio per questo che BZ2 viene di solito abbinato a un formato di archivio: l'archivio raccoglie i file, BZ2 comprime il risultato.
7-Zip e Keka leggono sia TAR sia BZ2, quindi puoi confrontare il risultato con l'originale senza un secondo programma.
BZ2 impacchetta gli stessi campioni in circa metà dello spazio. Non si scarta nulla — decomprimendolo riottieni il TAR bit per bit — ed è per questo il posto migliore per ciò che vuoi conservare.
TAR è stato pubblicato nel 1979. È descritto in POSIX.1-2001 ustar, e vale la pena conoscerlo se il file deve sopravvivere allo strumento che lo ha scritto.
BZ2 risale al 1996. bzip2, 7-Zip e Keka lo leggono.
TAR è stato pubblicato nel 1979 e BZ2 nel 1996. Il più vecchio è in genere il file più sicuro da consegnare; il più recente fa lo stesso lavoro con meno byte.
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.
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.
No. BZ2 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.
BZ2 comprime un singolo flusso e non può contenere una cartella. È proprio per questo che BZ2 viene di solito abbinato a un formato di archivio: l'archivio raccoglie i file, BZ2 comprime il risultato.
BZ2 impacchetta gli stessi campioni in circa metà dello spazio. Non si scarta nulla — decomprimendolo riottieni il TAR bit per bit — ed è per questo il posto migliore per ciò che vuoi conservare.
Non si scarta nulla. TAR e BZ2 salvano il contenuto senza perdita: la conversione cambia la confezione, non la qualità, e si può ripetere senza che i danni si accumulino.