6.28. Bzip2-1.0.3

Il pacchetto Bzip2 contiene programmi per comprimere e decomprimere file. La compressione di file di testo con bzip2 raggiunge una migliore percentuale di compressione rispetto al tradizionale gzip.

Tempo di costruzione approssimativo: meno di 0.1 SBU
Spazio necessario su disco: 5.3 MB

6.28.1. Installazione di Bzip2

Applicare una patch per installare la documentazione per questo pacchetto:

patch -Np1 -i ../bzip2-1.0.3-install_docs-1.patch

Il comando bzgrep non interpreta i caratteri escape '|' e '&' nei nomi di file che gli vengono passati. Questo permette a comandi arbitrari di essere eseguiti con i privilegi dell'utente che lancia bzgrep. Applicare la patch seguente per risolvere questo:

patch -Np1 -i ../bzip2-1.0.3-bzgrep_security-1.patch

Lo script bzdiff usa ancora il deprecato programma tempfile. Aggiornarlo affinché venga usato mktemp al suo posto:

sed -i 's@tempfile -d /tmp -p bz@mktemp -p /tmp@' bzdiff

Preparare Bzip2 per la compilazione con:

make -f Makefile-libbz2_so
make clean

Significato del parametro di make:

-f Makefile-libbz2_so

Questo farà sì che Bzip2 venga costruito usando un diverso file Makefile, in questo caso il file Makefile-libbz2_so, che crea una libreria dinamica libbz2.so e collega le utilità di Bzip2 verso questo.

Compilare e testare il pacchetto:

make

Se si sta reinstallando Bzip2, bisogna prima dare rm -vf /usr/bin/bz*, altrimenti il successivo make install fallirà.

Installare i programmi:

make install

Ora installare i binari bzip2 condivisi nella directory /bin, quindi creare qualche necessario link simbolico, e pulire:

cp -v bzip2-shared /bin/bzip2
cp -av libbz2.so* /lib
ln -sv ../../lib/libbz2.so.1.0 /usr/lib/libbz2.so
rm -v /usr/bin/{bunzip2,bzcat,bzip2}
ln -sv bzip2 /bin/bunzip2
ln -sv bzip2 /bin/bzcat

6.28.2. Contenuti di Bzip2

Programmi installati: bunzip2 (link a bzip2), bzcat (link a bzip2), bzcmp, bzdiff, bzegrep, bzfgrep, bzgrep, bzip2, bzip2recover, bzless e bzmore
Librerie installate: libbz2.{a,so}

Brevi descrizioni

bunzip2

Decomprime file bzippati.

bzcat

Decomprime verso lo standard output.

bzcmp

Esegue cmp su file bzippati.

bzdiff

Esegue diff su file bzippati.

bzgrep

Esegue grep su file bzippati.

bzegrep

Esegue egrep su file bzippati

bzfgrep

Esegue fgrep su file bzippati

bzip2

Comprime file utilizzando l'algoritmo di compressione del testo con ordinamento a blocchi Burros-Wheeler con codifica Huffman. Il tasso di compressione in genere è considerevolmente migliore di quello raggiunto da compressori più convenzionali che utilizzano «Lempel-Ziv», come gzip.

bzip2recover

Tenta di recuperare dati da file bzippati danneggiati.

bzless

Esegue less su file bzippati.

bzmore

Esegue more su file bzippati.

libbz2*

La libreria che implementa la compressione con ordinamento a blocchi senza perdita di dati, usando l'algoritmo Burrows-Wheeler.