Gzip est reconnu pour sa rapidité en matière de compression, mais il présente une limitation notoire : il n’optimise pas l’utilisation des processeurs multicœurs. Cela signifie que sur des machines modernes dotées de plusieurs cœurs, gzip ne peut pas tirer parti de cette puissance supplémentaire. Pour remédier à ce problème, pigz, une version multithread de gzip, a été développée, permettant une compression significativement plus rapide. Cet article vous guide à travers les étapes pour compresser vos fichiers efficacement avec pigz.
Installation de pigz
Installer pigz est un processus simple. Sur les distributions Linux basées sur Debian, telles qu’Ubuntu ou Mint, utilisez la commande suivante dans votre terminal :
sudo apt-get install pigz
Pour les utilisateurs d’Arch Linux ou Manjaro, la commande d’installation est légèrement différente :
sudo pacman -S pigz
Si vous êtes sur openSUSE, adoptez cette approche :
sudo zypper install pigz
Compresser des fichiers avec pigz
Utiliser pigz pour compresser un fichier au format GNU Zip est un jeu d’enfant. Il vous suffit de taper la commande suivante :
pigz NOM_DU_FICHIER
Un point d’attention est que pigz efface le fichier original par défaut après compression. Si vous souhaitez conserver ce fichier, ajoutez l’option -k :
pigz -k NOM_DU_FICHIER
Pigz offre également un contrôle des niveaux de compression. Vous pouvez spécifier un niveau entre 1 (compression rapide avec des taux plus bas) et 9 (compression plus lente mais taux plus élevés) comme suit :
pigz -5 NOM_DU_FICHIER
Compression des dossiers avec tar et pigz
Une des limitations de pigz est qu’il ne peut pas compresser directement des dossiers. Néanmoins, vous pouvez contourner ce problème en l’associant à tar. Par exemple, si vous souhaitez archiver le dossier « Images », vous écrirez :
tar --use-compress-program="pigz -k -9" -cf images.tar.gz Images
Cette commande utilise tar pour créer une archive tout en appliquant pigz pour la compression, ce qui optimise le processus tout en préservant la structure du dossier.
Décompression des fichiers avec pigz
Décompresser des fichiers avec pigz est tout aussi simple. Pour un fichier compressé, utilisez l’une des commandes suivantes :
pigz -d NOM_DU_FICHIER.gz
unpigz NOM_DU_FICHIER.gz
Pour les archives créées avec tar, la décompression suit une méthode similaire :
tar --use-compress-program="pigz -d" -xvf images.tar.gz
Ajuster la parallélisation avec pigz
Par défaut, pigz exploite tous les cœurs de votre système, ce qui peut réduire la réactivité de votre ordinateur lors de la compression. Pour limiter l’utilisation des cœurs, vous pouvez utiliser le commutateur -p, suivi du nombre de cœurs à utiliser. Par exemple, pour limiter pigz à deux cœurs :
pigz -k -p2 NOM_DU_FICHIER
Il est préférable de choisir un nombre qui garantit un équilibre entre la performance de compression et les besoins de votre système pour d’autres tâches.
Comment compresser vos fichiers plus rapidement avec pigz
Pour tirer le meilleur parti de pigz, il est essentiel de sélectionner le bon niveau de compression et d’utiliser les options adéquates selon vos besoins. La parallélisation est un des aspects clés, ainsi que l’usage de tar pour gérer les dossiers. En ajustant ces paramètres, vous pouvez réduire considérablement le temps nécessaire pour compresser vos fichiers tout en maximisant la performance de votre système.
FAQ
Q1 : Quel est l’avantage de pigz par rapport à gzip ?
Pigz utilise plusieurs threads de traitement, ce qui permet une compression plus rapide sur les systèmes multicœurs, contrairement à gzip qui ne fait appel qu’à un seul cœur.
Q2 : Puis-je utiliser pigz sur tout type de fichier ?
Oui, pigz peut compresser n’importe quel fichier conforme au format GNU Zip, mais il est recommandé de l’utiliser avec des fichiers de taille appropriée pour optimiser les performances.
Q3 : Comment puis-je augmenter la vitesse de compression ?
Pour augmenter la vitesse, utilisez un niveau de compression inférieur avec pigz (par exemple, -1 ou -2) ou limitez le nombre de cœurs utilisés avec l’option -p.