U sljedećem ćemo članku pogledati pigz. Ovo je višenitna gzip implementacija koja će nam omogućiti komprimirati datoteke u vrlo kratkom vremenu. Ovaj nam alat nudi još jednu mogućnost kompresije, jer čak i jedno od najbržih rješenja za arhiviranje / kompresiju, poput gzip, ima mali problem, a to je da ne podržava više procesora / jezgri. To znači da ako imamo relativno novo računalo, ono neće iskoristiti sve njegove mogućnosti.
Pigz, što je paralelna implementacija gzip-a, jest potpuno funkcionalna zamjena za gzip, koji iskorištava više procesora i više jezgri prilikom komprimiranja podataka. Pigz je napisao Mark Adler, a koristi knjižnice zlib i pthread.
Pigz komprimira pomoću niti za korištenje više procesora i jezgri. Svaka je podijeljena na komade 128 KB. Svaka od njih i pojedinačna kontrolna vrijednost za svaku krišku izračunavaju se paralelno. Komprimirani podaci zapisuju se prema izlazu, a kombinirana vrijednost provjere izračunava se iz pojedinačnih vrijednosti provjere.
Pigz instalacija na Ubuntuu
u instalirajte pigz na Ubuntu, Mint i druge distribucije kompatibilne s Debianom, morat ćemo samo otvoriti terminal (Ctrl + Alt + T) i upotrijebiti naredbu:
sudo apt install pigz
Osnovna upotreba pigza
Stisnite jednu datoteku
u komprimirati bilo koju datoteku u format GNU ZIP sa pigzom, morat ćemo ga koristiti samo na sljedeći način:
pigz NOMBRE_DEL_ARCHIVO
Za neke bi to mogao predstavljati problem prema zadanim postavkama pigz briše izvornu datoteku nakon kompresije. Ako ga želite zadržati, morate upotrijebite prekidač -k kako slijedi:
pigz -k NOMBRE_DEL_ARCHIVO
Pigz podržava više razina kompresije, i omogućit će nam da odaberemo između njih navodeći njihov broj nakon crtice. Primjer toga bio bi:
pigz -9 -k NOMBRE_DEL_ARCHIVO
Možemo koristiti brojeve od 1 do 9. S '1' postići ćemo brže performanse, ali s najnižom kompresijom, a s '9' postići ćemo najsporiju, ali najvišu kompresiju.
Sažimanje mapa
Pigz ima značajno ograničenje, a to je da ne podržava mape. Datoteke ćemo moći komprimirati samo pojedinačno. Iako možemo pronaći alternativno rješenje, a to je korištenje zajedno s njim katran.
Ako bismo htjeli komprimirati mapu 'fondovi', a budući da tar podržava upotrebu vanjskih programa kompresije, mogli bismo učiniti nešto poput sljedećeg:
tar --use-compress-program="pigz -k -9" -cf Fondos.tar.gz Fondos/
U gornjoj naredbi, katran –koristiti-program-kompresije to utvrđuje iako će stvoriti datoteku s katranom, sažimanje njezinog sadržaja vršit će se putem vanjskog programa, u ovom slučaju pigz. Ovaj vanjski program i njegovi parametri definirani su dijelom svinja -k -9 zapovjedništva. Na kraju ćemo naznačiti da želimo stvoriti datoteku pomoću '-usp', nazvano'Pozadine.tar.gz'sa svime u mapi'Novac/'.
Raspakirajte datoteke i mape
Raspakirajte bilo koju .gz datoteku s pigzom jednostavno je kao upisivanje bilo koje od sljedećih naredbi:
pigz -d NOMBRE_DEL_ARCHIVO.gz unpigz NOMBRE_DEL_ARCHIVO.gz
U prethodno stvorenoj datoteci s mapom s nastavkom tar.gz, dekompresija mape koristi isti pristup 'katran'koje koristimo za kompresiju:
tar --use-compress-program="pigz -d" -xvf NOMBRE_CARPETA.tar.gz
Ograničavajući paralelizam
Pigz, prema zadanim postavkama koristi sve procesore / jezgre na računalu. Kada komprimirate velike skupove podataka, to može utjecati na odziv vašeg računala.
Opcijom p možemo ograničiti upotrebu na određeni broj procesora / jezgri. Ovo će ostatak ostaviti slobodnim za vaše druge zadatke i interaktivnost. Da biste to učinili, morate dodati broj procesora / jezgri kako slijedi:
pigz -k -p2 NOMBRE_DEL_ARCHIVO
-p2 ograničava pigz na upotrebu samo dva procesora / jezgre. Možemo koristiti bilo koji broj koji želimo, pa čak i ako je očit, važno je taj broj zadržati u granicama našeg hardvera.
Za više informacija korisnici mogu pogledajte datoteku README ili pročitajte stranicu Korisnički priručnik od pigz.