LZMA ou 7-zip est un nouvel outil de compression de fichier qui compresse les fichier 10-30% plus efficacement que bzip2 ou gzip. LZMA a été porté sur Linux, BSD et Windows. 7-zip utilise aussi plus de puissance processeur que bzip2, mais il est rapide pour décompresser.

Astuce

La page web pour le logiciel principal est :

Logiciels compatibles :

Tout d’abord, téléchargez ceci (ou une version plus récente) : http://www.7-zip.org/dl/lzma417.tar.bz2

Déballez le logiciel

mkdir lzma417/ &&
tar jxf lzma417.tar.bz2 -C lzma417/

Compilez et installez le logiciel

cd lzma417/SRC/7zip/Compress/LZMA_Alone/ &&
make &&
install lzma /bin/

Il n’y a pas de page de manuel. Entrez ‘lzma’ pour accéder à un menu d’aide. lzma ne se comporte pas comme gzip ou bzip2 par défault. Deux petits scripts peuvent aider :

cat > /tmp/7zip.sh << "EOF"
#!/bin/sh
/bin/lzma e ${1} ${1}.7z &&
rm -f ${1}
EOF
install /tmp/7zip.sh /bin/7zip

cat > /tmp/7unzip.sh << "EOF"
#!/bin/sh
/bin/lzma d ${1} $(echo ${1} | sed -e 's/.7z$//') &&
rm -f ${1}
EOF
install /tmp/7unzip.sh /bin/7unzip

rm /tmp/{7zip,7unzip}.sh

Ces deux scripts se comporteront comme gzip et gunzip en compressant le fichier et en supprimant l’original en cas de succès.

Pour compresser votre noyau avec LZMA utilisez l’un de ces correctifs :

Appliquez le correctif au noyau et ça marchera tout seul. Les routines Zlib sont remplacées par LZMA. Mon noyau pesait 1,3Mio avant LZMA et 1,1Mio après.

À faire

  • Ce serait bien de supporter LZMA pour les modules du noyau dans modutils.

Remerciements

  • Merci à Google pour m’avoir aidé à chercher des informations sur LZMA
  • Merci à l’équipe de lZMA : http://www.7-zip.com/sdk.html
  • Merci à Ming-Ching Tiew pour les correctifs LZMA du noyau.

Historique des modifications

  • [2005-06-09]
    • Astuce initiale.
  • [2005-06-10]
    • Ajout des URLs pour les logiciels compatibles.

Historique de la traduction

  • [2009-05-15]
    • Traduction initiale de l’astuce