De l’utilité de GNU tar 1.21…

En attendant de clore la série d’articles sur les distributions qui vont marquer 2009 (je suis en train de récupérer les ISOs pour la distribution Frugalware, j’ai voulu faire un petit billet spécial geek ultime 🙂

Butinant sur Distrowatch, j’ai appris la disponibilité de GNU tar 1.21. Une des principales nouveautés, c’est le support natif du format de compression lzma (utilisé par un certain 7-zip).

Etant donné que le logiciel n’est sorti qu’environ depuis une semaine, il n’est pas disponible pour Ubuntu 8.10 (et le sera peut-être pour Jaunty Jackalope alias 9.04), j’ai donc compilé le logiciel depuis son code source.

Pour cela, il suffit d’avoir le paquet build-essential, donc en ligne de commande :

sudo aptitude install build-essential

J’ai récupéré le code source de GNU tar depuis sa page officielle, au format tar.bz2, puis j’ai décompacté le code source :

tar xvfj tar-1.21.tar.bz2

Il suffit d’entrer dans le répertoire du code source, et de lancer la compilation :

cd tar-1.21/ ; ./configure ; make

Si la compilation se déroule bien, il suffit d’un petit :

sudo make install et GNU tar 1.21 est installé en parallèle du GNU tar 1.20 fourni par la distribution.

Voici la sortie obtenue par un petit tar --version :

fred@fred-laptop:~$ tar --version
tar (GNU tar) 1.21
Copyright © 2008 Free Software Foundation, Inc.
Licence GPLv3+ : GNU GPL version 3 ou ultérieure <http ://gnu.org/licenses/gpl.html>
Ceci est un logiciel libre : vous êtes libre de le modifier et de le redistribuer.
Il est fourni SANS GARANTIE, dans la mesure de ce que permet la loi.
Écrit par John Gilmore et Jay Fenlason.

Et coté puissance de compactage ? Le plus simple est de prendre une archive tar.bz2 conséquente, par exemple le code source de Mozilla Firefox 3.0.5.

En tar.bz2, le fichier pèse :


fred@fred-laptop:~/download$ du -sh firefox-3.0.5-source.tar.bz2
36M firefox-3.0.5-source.tar.bz2

Après avoir désarchiver entièrement le code source, je le recompacte en utilisant l’option -J (qui active le compactage au format lzma) avec GNU tar 1.21.

tar cvfJ firefox-3.0.5-source.tar.lzma mozilla/

Et la taille ?

fred@fred-laptop:~/download$ du -sh firefox-3.0.5-source.tar.lzma
30M firefox-3.0.5-source.tar.lzma

6 Mo, soit 16% de gain sur un tel code source, c’est déjà intéressant, non ?