bzip2 è un programma open source di compressione di dati basato sulla trasformata di Burrows-Wheeler.. Si affida a utility esterne separate per attività come la gestione di più file, la crittografia e la divisione degli archivi.
bzip2 è sviluppato da Julian Seward e distribuito a partire dal 1996. L'ultima versione è la 1.0.8 ed è stata pubblicata il 13 luglio 2019 con una licenza libera.
Descrizione
bzip2 produce, nella maggior parte dei casi, compressi molto piccoli rispetto a gzip o ZIP, tuttavia ha prestazioni inferiori a quest'ultimi siccome risulta leggermente più lento .
Nonostante ciò, con il costante effetto della legge di Moore, che rende il tempo-macchina sempre inferiore e meno importante, i metodi di elevata compressione come bzip2 sono diventati più popolari. Secondo l'autore, bzip2 ha un'efficienza di compressione inferiore del 10-15% rispetto a quella della famiglia dei compressori basati sull'algoritmo più efficiente, attualmente conosciuto come PPM.
bzip2 usa la trasformata di Burrows-Wheeler per convertire le sequenze di caratteri ricorrenti in stringhe di lettere identiche. In bzip2, i blocchi sono in testo piano e tutti della stessa misura, inoltre sono contrassegnati da sequenze di bit derivate dalla rappresentazione decimale del Pi greco.
Nella versione GNU, bzip2 può essere utilizzato indipendentemente:
bzip2 file
(comprime file)
bzip2 -d file.bz2
(decomprime file.bz2)
oppure può essere utilizzato insieme a tar:
tar cjf archivio.tar.bz2 lista dei file tar xjf archivio.tar.bz2
rispettivamente per comprimere e decomprimere archivio.tar.bz2 in lista dei file e viceversa. Tuttavia l'integrazione di bzip2 con tar (tramite l'opzione j) è possibile solo nella versione GNU di quest'ultimo, nella versione originale Unix è necessario spezzare il processo da un operatore pipe.
Recupero dati bzip2 include uno strumento per il recupero di archivi danneggiati chiamato bzip2recover. Come accennato in precedenza, bzip2 comprime i file in blocchi indipendenti l'uno dall'altro. Se durante la trasmissione di dati si verifica un errore, il file potrebbe risultare danneggiato. Tuttavia, è possibile recuperare dati dai blocchi non danneggiati. Ogni blocco ha una propria stringa di controllo CRC-32 che consente di distinguere i blocchi danneggiati da quelli integri.
bzip2recover accetta un solo argomento in entrata, ovvero il nome del file danneggiato. Il programma cerca i blocchi nel file .bz2, li estrae tutti e li salva numerandoli in ordine. Una volta ottenuti i file-blocco, è possibile aprirli per recuperare i dati.
Note
Bibliografia
Collegamenti esterni
Categoria:Strumenti di sistema Categoria:Compressione dei dati Categoria:Formati di archiviazione dati Categoria:Archiviazione file