În articolul următor vom analiza pigz. Aceasta este o implementare gzip multithreaded care ne va permite comprimați fișierele imediat. Acest instrument ne oferă încă o opțiune pentru compresie, deoarece chiar și una dintre cele mai rapide soluții de arhivare / compresie disponibile, cum ar fi gzip, are o mică problemă, și anume că nu acceptă mai multe procesoare / nuclee. Aceasta înseamnă că, dacă avem un PC relativ nou, acesta nu va profita de toate capacitățile sale.
Pigz, care înseamnă implementarea gzip paralel, este un înlocuitor complet funcțional pentru gzip, care exploatează mai multe procesoare și multiple nuclee la comprimarea datelor. Pigz a fost scris de Mark Adler și folosește biblioteci zlib și pthread.
Pigz se comprimă folosind fire pentru a utiliza mai multe procesoare și nuclee. Fiecare este împărțit în bucăți de 128 KB. Fiecare dintre ele și valoarea individuală de control pentru fiecare felie sunt calculate în paralel. Datele comprimate sunt scrise în ordine pentru ieșire, iar valoarea de verificare combinată este calculată din valorile de verificare individuale.
Instalarea Pigz pe Ubuntu
la instalați pigz pe Ubuntu, Mint și alte distribuții compatibile Debian, va trebui doar să deschidem un terminal (Ctrl + Alt + T) și să folosim comanda:
sudo apt install pigz
Utilizarea de bază a pigz
Comprimă un singur fișier
la comprimați orice fișier pentru formatare GNU Zip cu pigz, va trebui să-l folosim doar în felul următor:
pigz NOMBRE_DEL_ARCHIVO
Pentru unii, poate fi o problemă care în mod implicit, pigz șterge fișierul original după comprimare. Dacă doriți să o păstrați, trebuie utilizați comutatorul -k după cum urmează:
pigz -k NOMBRE_DEL_ARCHIVO
Pigz acceptă mai multe niveluri de compresie, și ne va permite să alegem între ele indicând numărul lor după o cratimă. Un exemplu în acest sens ar fi:
pigz -9 -k NOMBRE_DEL_ARCHIVO
Putem folosi numere de la 1 la 9. Cu '1' vom obține o performanță mai rapidă, dar cu cea mai mică compresie și cu '9' vom obține cea mai lentă, dar cea mai mare compresie.
Comprimă dosarele
Pigz are o restricție semnificativă și este că nu acceptă foldere. Vom putea comprima fișiere numai individual. Deși putem găsi o soluție alternativă, care este să o folosim împreună cu gudron.
Dacă am vrea să comprimăm folderul 'fonduri'și, deoarece tar acceptă utilizarea programelor de compresie externe, am putea face ceva de genul următor:
tar --use-compress-program="pigz -k -9" -cf Fondos.tar.gz Fondos/
În comanda de mai sus, tar –utilizați-program-comprimare afirmă că deși va crea un fișier cu tar, comprimarea conținutului său se va face printr-un program extern, în acest caz pigz. Acest program extern și parametrii săi sunt definiți împreună cu piesa pigz-k-9 a poruncii. În cele din urmă, vom indica că dorim să creăm un fișier folosind „-cf', numit'Fundaluri.tar.gz„cu tot ce este în dosar”Bani/".
Dezarhivați fișierele și folderele
Dezarhivați orice fișier .gz cu pigz este la fel de simplu ca să tastați oricare dintre următoarele comenzi:
pigz -d NOMBRE_DEL_ARCHIVO.gz unpigz NOMBRE_DEL_ARCHIVO.gz
În fișierul creat anterior cu un folder cu extensia tar.gz, decompresie folder folosește aceeași abordare "gudron„pe care îl folosim pentru compresie:
tar --use-compress-program="pigz -d" -xvf NOMBRE_CARPETA.tar.gz
Limitarea paralelizării
Pigz, implicit, folosește toate procesoarele / nucleele de pe computer. Atunci când comprimați seturi mari de date, acest lucru vă poate afecta capacitatea de reacție a computerului.
Cu opțiunea p, putem limita utilizarea la un anumit număr de procesoare / nuclee. Acest lucru va lăsa restul liber pentru celelalte sarcini și interactivitate. Pentru a face acest lucru, trebuie doar să adăugați numărul de procesoare / nuclee după cum urmează:
pigz -k -p2 NOMBRE_DEL_ARCHIVO
-p2 restricționează pigz să folosească doar două procesoare / nuclee. Putem folosi orice număr dorim și chiar dacă este evident, este important să menținem acest număr în limitele hardware-ului nostru.
Pentru mai multe informații, utilizatorii pot aruncați o privire la dosar README sau citiți pagina din manual de utilizare de pigz.