Recherche de site Web

Comment compresser des fichiers plus rapidement avec l'outil Pigz sous Linux


Écrit par Mark Adler, Pigz est un acronyme pour Parallel Implementation de 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 davantage en lumière Pigz et vous explique comment utiliser l'utilitaire pour compresser des fichiers sur les systèmes Linux.

Installation de Pigz sur les systèmes Linux

Installer Pigz est une promenade de santé car le paquet Pigz est contenu dans les dépôts officiels des distributions majeures telles que Debian et CentOS. .

Vous pouvez installer Pigz en une seule commande dans différentes distributions en utilisant leurs gestionnaires de packages 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 compression, exécutez l'option -k comme indiqué.

pigz -k ubuntu-20.04-beta-desktop-amd64.iso

À partir du résultat, nous pouvons clairement voir que le fichier original a été conservé même après 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 obtenu, 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 également le pourcentage de compression qui dans ce cas est 1,9 %.

De plus, vous pouvez utiliser différents niveaux de compression allant 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 – Aucune 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 compresse uniquement des fichiers uniques. Pour contourner le problème, pigz est utilisé conjointement 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'utilitaire pigz utilise plusieurs cœurs et processeurs lors de la compression des 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 l'original. fichier (-k).

pigz -9 -k -p4 ubuntu-20.04-beta-desktop-amd64.iso

Comment décompresser des fichiers avec Pigz

Pour décompresser un fichier ou un répertoire à l'aide de pigz, utilisez l'option -d ou la commande unpigz.

En utilisant 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

De 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 à utiliser avec la commande pigz.

pigz --help

Et voila. Nous avons couvert l'outil de ligne de commande pigz et vous avons montré comment 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 à essayer et à nous raconter comment cela s'est passé.