C’est un format de compression au même titre que bzip2 ou gnuzip. La différence, c’est qu’il est nettement plus efficace que les deux précédents sur deux points :
[ul]
[li]le taux de compression est plus élevé que bzip2,[/li]
[li]la vitesse de décompression est très faible.[/li][/ul]
Je ne sais pas sous Lenny, mais sous Squeeze vous l’avez déjà installé. Personnellement je m’en sers à travers tar donc pour la compression :
et la décompression :
Si vous utilisé tar en version 1.24 ou superieur vous pouvez décompresser sans spécifier le format :
Je n’ai pas vraiment de chiffre à vous donner parce que ça dépend fortement des fichiers, mais il m’est arrivé de diviser par plus de quatre la taille d’une archive, là où bzip2 n’arrivait pas à gagner grand-chose.
[code]francois@totoche:/tmp$ time tar cJf toto.xz ~/Annee2009
tar: Suppression de « / » au début des noms des membres
real 0m35.257s
user 0m32.938s
sys 0m1.384s
francois@totoche:/tmp$ time tar czf toto.tgz ~/Annee2009
tar: Suppression de « / » au début des noms des membres
real 0m3.917s
user 0m3.388s
sys 0m0.120s
francois@totoche:/tmp$ time tar xJf toto.xz
real 0m4.621s
user 0m4.132s
sys 0m0.248s
francois@totoche:/tmp$ time tar xzf toto.tgz
real 0m0.974s
user 0m0.712s
sys 0m0.200s
francois@totoche:/tmp$ ls -l toto.tgz toto.xz
-rw-r–r-- 1 francois francois 42033089 déc. 27 14:38 toto.tgz
-rw-r–r-- 1 francois francois 40641496 déc. 27 14:38 toto.xz
francois@totoche:/tmp$
[/code]je ne suis pas sûr que ça vaille le coup
Pour 7z, ça donne
[code]francois@totoche:/tmp$ time 7z a toto.tar.7z ~/Annee2009
[code]~ % du -sh Projets
195M Projets
~ [2]% time tar cJf Projets.txz Projets
tar cJf Projets.txz Projets 19,45s user 256,21s system 100% cpu 4:34,90 total
~ % time tar cjf Projets.tbz Projets
tar cjf Projets.tbz Projets 241,86s user 2,38s system 99% cpu 4:05,34 total
~ % ls -sh Projets.t*
146M Projets.tbz 123M Projets.txz
~ % cp Projets.t* /tmp
Flags -vtiRP
1/2 - Projets.tbz
2/2 - Projets.txz
2 files copied, 0 failed
~ % /tmp
/tmp % time tar xf Projets.txz
tar xf Projets.txz 18,41s user 2,61s system 102% cpu 20,468 total
/tmp % rm -rf Projets/
/tmp % time tar xf Projets.tbz
tar xf Projets.tbz 58,68s user 4,38s system 99% cpu 1:03,08 total[/code]
La complexité n’est pas beaucoup plus grande. Le taux de compression est superieur et la vitesse de décompression est sans égale.
Tu compare à bz2 qui semble assez mauvais (je ne l’avais pas sélectionné car je ne l’utilise pas vraiment, j’aboutis en gros aux mêmes chiffres), tu as essayé avec gzip et 7z?
(Je viens de lire que xz est le «successeur» de 7z, c’est bizarre ces différences chez moi du coup, tu as les mêmes?)
En vitesse pure, gz coiffe toujours les autres formats au poteau. Ça reste le format le plus avantageux pour des fichiers déjà compressés (images, audio, vidéo) dont on ne peut de toute façon pas réduire sensiblement la taille.
Mais xz arrive à avoir une vitesse de décompression proche de gz à l’usage, tout en ayant un taux de compression supérieur à bz2.
$ du -h everything.log
1,8M everything.log
$ time gzip everything.log
real 0m0.045s
user 0m0.040s
sys 0m0.003s
$ du -h everything.log.gz
248K everything.log.gz
$ time gzip -d everything.log.gz
real 0m0.012s
user 0m0.010s
sys 0m0.000s
$ time bzip2 everything.log
real 0m0.365s
user 0m0.360s
sys 0m0.003s
$ du -h everything.log.bz2
180K everything.log.bz2
$ time bzip2 -d everything.log.bz2
real 0m0.053s
user 0m0.043s
sys 0m0.007s
$ time xz everything.log
real 0m0.600s
user 0m0.550s
sys 0m0.027s
$ du -h everything.log.xz
156K everything.log.xz
$ time xz -d everything.log.xz
real 0m0.022s
user 0m0.013s
sys 0m0.007s
En reprenant un exemple avec 480 fichiers Tex, xz s’en sort mieux et c’est vrai qu’il est nettement mieux que bz2. Pour le taux de compression, cette fois, il n’y a pas photo. Il faudrait faire plusieurs essais, visiblement ça dépend. Par contre visiblement, il est peu solide à une altération de l’archive (seul gz s’en tire bien là dessus) donc soit il faut utiliser par2 soit c’est à proscrire pour le backup.
[code]francois@totoche:~/Tex$ time tar cJf /tmp/ar.txz *.lyx
real 0m6.323s
user 0m5.868s
sys 0m0.180s
francois@totoche:~/Tex$ time tar czf /tmp/ar.tgz *.lyx
real 0m0.630s
user 0m0.484s
sys 0m0.040s
francois@totoche:~/Tex$ time tar cjf /tmp/ar.tar.bz2 *.lyx
real 0m3.389s
user 0m3.176s
sys 0m0.072s
francois@totoche:~/Tex$ time 7z a /tmp/ar.7z *.lyx
real 0m4.800s
user 0m4.060s
sys 0m0.240s
francois@totoche:~/Tex$ cd /tmp
francois@totoche:/tmp$ ls -l ar.*
-rw-r–r-- 1 francois francois 633399 déc. 28 09:37 ar.7z
-rw-r–r-- 1 francois francois 784647 déc. 28 09:37 ar.tar.bz2
-rw-r–r-- 1 francois francois 1371478 déc. 28 09:37 ar.tgz
-rw-r–r-- 1 francois francois 591968 déc. 28 09:36 ar.txz
francois@totoche:/tmp$ time 7z x ar.7z
Everything is Ok
Files: 480
Size: 9769898
Compressed: 633399
real 0m0.614s
user 0m0.224s
sys 0m0.088s
francois@totoche:/tmp$ time tar xjf ar.tar.bz2
real 0m0.789s
user 0m0.552s
sys 0m0.100s
francois@totoche:/tmp$ time tar xzf ar.tgz
real 0m0.254s
user 0m0.100s
sys 0m0.088s
francois@totoche:/tmp$ time tar xJf ar.txz
real 0m0.482s
user 0m0.144s
sys 0m0.092s
francois@totoche:/tmp$
[/code]
De toute manière par définition la compression c’est pas terrible pour le backup. Ce qui est le plus fréquent est codé de manière plus petite si une alteration arrive sur cette petite partie, l’archive est bousillée.
Moi xz m’a permis d’envoyer par mail des pièces jointes qui au départ faisaient 40Mio (environ 5Mio après compression).
C’est difficile à juger car le taux de compression dépend de l’entropie des données.
Après test avec des fichiers images, c’est une victoire de gzip pour ma part :
Il est vraiment plus rapide à la compression(facteur 10 avec XZ et 7Z, 4 avec bunzip qui compresse moins bien), idem à la décompression (facteur 4 avec XZ et 7Z), il compresse juste moins bien (mais la différence est pas énorme)
[code]glorf@debian-papa-desktop:~/Images$ time tar cJf /tmp/images/ar.txz *.png
real 0m24.164s
user 0m23.905s
sys 0m0.376s
glorf@debian-papa-desktop:~/Images$ time tar czf /tmp/images/ar.tgz *.png
real 0m2.320s
user 0m2.236s
sys 0m0.124s
glorf@debian-papa-desktop:~/Images$ time tar cjf /tmp/images/ar.tar.bz2 *.png
real 0m9.625s
user 0m9.513s
sys 0m0.156s
glorf@debian-papa-desktop:~/Images$ time 7z a /tmp/ar.7z .png
real 0m12.675s
user 0m25.466s
sys 0m0.496s
glorf@debian-papa-desktop:~/Images$ cd /tmp/images/
glorf@debian-papa-desktop:/tmp/images$ ls -l ar.
-rw-r–r-- 1 glorf glorf 41637104 28 déc. 14:46 ar.7z
-rw-r–r-- 1 glorf glorf 42088107 28 déc. 14:45 ar.tar.bz2
-rw-r–r-- 1 glorf glorf 41919611 28 déc. 14:45 ar.tgz
-rw-r–r-- 1 glorf glorf 41676480 28 déc. 14:45 ar.txz
glorf@debian-papa-desktop:/tmp/images$ time 7z x ar.7z
Everything is Ok
Files: 82
Size: 42329344
Compressed: 41637104
real 0m4.358s
user 0m4.280s
sys 0m0.072s
glorf@debian-papa-desktop:/tmp/images$ time tar xjf ar.tar.bz2
real 0m4.143s
user 0m4.076s
sys 0m0.196s
glorf@debian-papa-desktop:/tmp/images$ time tar xzf ar.tgz
real 0m0.427s
user 0m0.364s
sys 0m0.188s
glorf@debian-papa-desktop:/tmp/images$ time tar xJf ar.txz
sujet fort intéressant ! pour ma part je cherche aussi le meilleur compresseur pour des fichier de la taille de 10 a 15 GO (fichier texte, extraction SQL (base de données))