Comment compresser des fichiers plus rapidement avec l’outil Pigz sous Linux
Ecrit par Mark Adler, Pigz est l’acronyme de Parallel Implementation of GZip. C’est un outil de compression astucieux qui vous aide à compresser des fichiers à des vitesses fulgurantes. En tant qu’amélioration du bon vieil utilitaire gzip, il exploite plusieurs cœurs et processeurs pour compresser les données.
Ce guide met en lumière Pigz et vous explique comment utiliser l’utilitaire pour compresser des fichiers dans les systèmes Linux.
Installation de Pigz sur les systèmes Linux
L’installation de Pigz est une promenade de santé car le paquet Pigz est contenu dans des dépôts officiels pour les principales distributions telles que Debian et CentOS.
Vous pouvez installer Pigz en une seule commande dans différentes distributions en utilisant leurs gestionnaires de paquets respectifs comme suit.
$ sudo apt install pigz [On Debian/Ubuntu]
sudo dnf install pigz [On CentOS/RHEL/Fedora]
sudo pacman -S pigz [On Arch/Manjaro Linux]
OR
yay -S pigz
Comment compresser des fichiers avec Pigz
Pour compresser un seul fichier au format zip, utilisez la syntaxe.
$ pigz filename
Dans ce guide, nous utiliserons le fichier ubuntu-20.04-beta-desktop-amd64.iso à des fins de démonstration. Pour compresser le fichier, exécutez :
$ pigz ubuntu-20.04-beta-desktop-amd64.iso
Cependant, la commande supprime le fichier d’origine lors de la compression, comme vous l’avez peut-être remarqué. Pour conserver le fichier d’origine après la compression, exécutez l’option -k comme indiqué.
$ pigz -k ubuntu-20.04-beta-desktop-amd64.iso
À partir de la sortie, nous pouvons clairement voir que le fichier d’origine a été conservé même après la compression.
Vérifier le contenu du fichier compressé sous Linux
Pour vérifier le contenu du fichier compressé, y compris les statistiques sur le taux de compression atteint, utilisez l’option -l avec la commande pigz :
$ pigz -l ubuntu-20.04-beta-desktop-amd64.iso.gz
À partir de la sortie, vous pouvez non seulement voir le contenu du fichier compressé, mais aussi le pourcentage de compression qui dans ce cas est de 1,9 %.
De plus, vous pouvez utiliser différents niveaux de compression qui existent de 1 à 9. Les niveaux de compression suivants sont pris en charge :
- 6 – Compression par défaut.
- 1 – Le plus rapide mais offre le moins de compression.
- 9 – La compression la plus lente mais la meilleure.
- 0 – Pas de compression.
Par exemple, pour compresser le fichier avec le meilleur niveau de compression, exécutez :
$ pigz -9 ubuntu-20.04-beta-desktop-amd64.iso
Comment compresser un répertoire avec Pigz
En soi, Pigz n’a pas d’options pour compresser un dossier, il ne compresse que des fichiers uniques. Pour contourner ce problème, pigz est utilisé en conjonction avec la commande tar pour compresser les répertoires.
Pour compresser un répertoire, utilisez l’argument --use-compress-program comme indiqué :
$ tar --use-compress-program="pigz -k " -cf dir1.tar.gz dir1
Comment limiter le nombre de processeurs lors de la compression
Nous avons mentionné plus tôt que l’outil utilitaire pigz utilise plusieurs cœurs et processeurs lors de la compression de fichiers. Vous pouvez spécifier le nombre de cœurs à utiliser à l’aide de l’option -p.
Dans cet exemple, ci-dessous, nous avons utilisé la meilleure compression (notée -9) avec 4 processeurs (-p4) tout en conservant le fichier d’origine (-k).
$ pigz -9 -k -p4 ubuntu-20.04-beta-desktop-amd64.iso
Comment décompresser des fichiers à l’aide de Pigz
Pour décompresser un fichier ou un répertoire à l’aide de pigz, utilisez l’option -d ou la commande unpigz.
À l’aide de notre fichier ISO compressé, la commande sera :
$ pigz -d ubuntu-20.04-beta-desktop-amd64.iso
OR
unpigz dir1.tar.gz
Comparaison entre Pigz et Gzip
Nous sommes allés un peu plus loin et avons opposé Pigz à l’outil Gzip.
Voici les résultats :
Compression Gzip
$ time gzip ubuntu-20.04-beta-desktop-amd64.iso
Compression Pigz
$ time pigz ubuntu-20.04-beta-desktop-amd64.iso
Décompression Gzip
$ time gzip -d ubuntu-20.04-beta-desktop-amd64.iso.gz
Décompression Pigz
$ time unpigz ubuntu-20.04-beta-desktop-amd64.iso.gz
D’après la comparaison, nous pouvons clairement voir que les temps de compression et de décompression pour Pigz sont beaucoup plus courts que pour Gzip. Cela implique que l’outil en ligne de commande Pigz est beaucoup plus rapide que l’outil Gzip
Pour plus de détails sur l’utilisation de la commande pigz, visitez les pages de manuel.
$ man pigz
De plus, exécutez la commande ci-dessous pour afficher toutes les options disponibles pour une utilisation avec la commande pigz.
$ pigz --help
Et voilà. Nous avons couvert l’outil en ligne de commande pigz et vous avons montré comment vous pouvez compresser et décompresser des fichiers. Nous sommes allés plus loin et avons comparé Pigz avec Gzip et avons découvert que Pigz est le meilleur des deux en termes de vitesse de compression et de décompression. Nous vous invitons à tenter le coup et à nous raconter comment cela s’est passé.









