Kako brže komprimirati datoteke pomoću alata Pigz u Linuxu


Napisao Mark Adler, Pigz je akronim za Paralelnu implementaciju za GZip. To je izvrstan alat za kompresiju koji vam pomaže komprimirati datoteke munjevitom brzinom. Kao poboljšanje dobrog starog uslužnog programa gzip, koristi više jezgri i procesora za komprimiranje podataka.

Ovaj vodič baca više svjetla na Pigz i vodi vas kroz korištenje uslužnog programa za komprimiranje datoteka u Linux sustavima.

Instaliranje Pigza na Linux sustave

Instaliranje Pigz je šetnja po parku jer se paket Pigz nalazi u službenim spremištima za glavne distribucije kao što su Debian i CentOS .

Možete instalirati Pigz u jednoj naredbi u različitim distribucijama koristeći njihove odgovarajuće upravitelje paketa kako slijedi.

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

Kako komprimirati datoteke s Pigzom

Za komprimiranje jedne datoteke u zip format koristite sintaksu.

pigz filename

U ovom ćemo vodiču koristiti datoteku ubuntu-20.04-beta-desktop-amd64.iso u svrhu demonstracije. Za komprimiranje datoteke izvršite:

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

Međutim, naredba briše izvornu datoteku nakon kompresije kao što ste mogli primijetiti. Da biste zadržali izvornu datoteku nakon kompresije, pokrenite pomoću opcije -k kao što je prikazano.

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

Iz izlaza možemo jasno vidjeti da je izvorna datoteka zadržana čak i nakon kompresije.

Provjerite sadržaj komprimirane datoteke u Linuxu

Za provjeru sadržaja komprimirane datoteke, uključujući statistiku o postignutom omjeru kompresije, koristite opciju -l s naredbom pigz:

pigz -l ubuntu-20.04-beta-desktop-amd64.iso.gz

Iz izlaza ne samo da možete vidjeti sadržaj komprimirane datoteke već i postotak kompresije koji je u ovom slučaju 1,9%.

Osim toga, možete koristiti različite razine kompresije koje postoje od 1 do 9. Podržane su sljedeće razine kompresije:

  • 6 – Zadana kompresija.
  • 1 – Najbrži, ali nudi najmanju kompresiju.
  • 9 – Najsporija, ali najbolja kompresija.
  • 0 – Bez kompresije.

Na primjer, za komprimiranje datoteke s najboljom razinom kompresije, izvršite:

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

Kako komprimirati direktorij s Pigzom

Sam po sebi, Pigz nema mogućnosti komprimiranja mape, komprimira samo pojedinačne datoteke. Kao zaobilazno rješenje, pigz se koristi zajedno s naredbom tar za zip direktorije.

Za komprimiranje imenika upotrijebite argument --use-compress-program kao što je prikazano:

tar --use-compress-program="pigz -k " -cf dir1.tar.gz dir1

Kako ograničiti broj procesora tijekom sažimanja

Ranije smo spomenuli da uslužni alat pigz koristi više jezgri i procesora prilikom komprimiranja datoteka. Možete odrediti broj jezgri koje će se koristiti pomoću opcije -p.

U ovom primjeru u nastavku upotrijebili smo najbolju kompresiju (označenu s -9) s 4 procesora (-p4) uz zadržavanje izvornika datoteka (-k).

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

Kako dekomprimirati datoteke pomoću Pigza

Da biste dekomprimirali datoteku ili direktorij koristeći pigz, koristite opciju -d ili naredbu unpigz.

Korištenjem naše komprimirane ISO datoteke, naredba će biti:

pigz -d ubuntu-20.04-beta-desktop-amd64.iso
OR
unpigz dir1.tar.gz

Usporedba između Pigza i Gzipa

Otišli smo malo dalje i suprotstavili Pigz alatu Gzip.

Evo rezultata:

Gzip kompresija

time gzip ubuntu-20.04-beta-desktop-amd64.iso

Pigz kompresija

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

Gzip dekompresija

time gzip -d ubuntu-20.04-beta-desktop-amd64.iso.gz

Pigz dekompresija

time unpigz ubuntu-20.04-beta-desktop-amd64.iso.gz

Iz usporedbe možemo jasno vidjeti da su vremena kompresije i dekompresije za Pigz mnogo kraća nego za Gzip. To implicira da je Pigz alat naredbenog retka puno brži od Gzip alata

Za više detalja o korištenju naredbe pigz posjetite stranice priručnika.

man pigz

Nadalje, pokrenite naredbu u nastavku da vidite sve opcije dostupne za korištenje s naredbom pigz.

pigz --help

I eto ti ga. Pokrili smo pigz alat naredbenog retka i pokazali vam kako možete komprimirati i dekomprimirati datoteke. Otišli smo dalje i usporedili Pigz s Gzipom i otkrili da je Pigz bolji od njih dvoje u pogledu brzine kompresije i dekompresije. Pozivamo vas da probate i javite nam kako je prošlo.