Linux-daky Pigz Tool bilen faýllary nädip gysmaly


Mark Adler tarapyndan ýazylan Pigz, GZip-iň paralel durmuşa geçirilmegi üçin gysgaça söz. Faýllary ýanýan çalt tizlik bilen gysmaga kömek edýän elli gysyş guraly. Gowy köne gzip peýdasynyň gowulaşmagy hökmünde, maglumatlary gysmak üçin birnäçe ýadro we prosessorlary ulanýar.

Bu gollanma “Pigz” -e has köp ýagtylyk berýär we Linux ulgamlaryndaky faýllary gysmak üçin peýdany nädip ulanmalydygyny öwrenýär.

Linux ulgamlarynda doňuz gurmak

“Doňuz” gurnamak seýilgähde gezelençdir, sebäbi “Doňuz” bukjasy Debian we CentOS ýaly esasy paýlamalar üçin resmi ammarlarda bar.

Pigz-i aşakdaky ýaly degişli paket dolandyryjylaryny ulanyp, dürli paýlamalarda bir buýrukda gurnap bilersiňiz.

$ 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

Doňuz bilen faýllary nädip gysmaly

Fileeke faýly zip formatda gysmak üçin sintaksis ulanyň.

$ pigz filename

Bu gollanmada görkeziş maksatly ubuntu-20.04-beta-desktop-amd64.iso faýlyny ulanarys. Faýly ýerine ýetirmek üçin gysmak üçin:

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

Şeýle-de bolsa, buýruk, ünsüňizi çeken ýaly gysylanda asyl faýly pozýar. Gysylandan soň asyl faýly saklamak üçin, görkezilişi ýaly -k opsiýasyny ulanyň.

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

Çykyşdan, asyl faýlyň gysylandan soňam saklanandygyny görüp bileris.

Linux-da gysylan faýlyň mazmunyny barlaň

Gysylan faýlyň mazmunyny, şol sanda gazanylan gysyş gatnaşygy baradaky statistikany barlamak üçin pigz buýrugy bilen -l opsiýasyny ulanyň:

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

Çykyşdan, diňe ziplenen faýlyň mazmunyny görmek bilen çäklenmän, bu ýagdaýda 1,9% gysyş göterimini hem görüp bilersiňiz.

Mundan başga-da, 1-den 9-a çenli bar bolan dürli gysyş derejelerini ulanyp bilersiňiz. Aşakdaky gysyş derejeleri goldanýar:

  • 6 - Bellenen gysyş.
  • 1 - Iň çalt, ýöne iň az gysyşy hödürleýär.
  • 9 - Iň haýal, ýöne iň gowy gysyş.
  • 0 - gysyş ýok.

Mysal üçin, faýly iň gowy gysyş derejesi bilen gysmak üçin ýerine ýetiriň:

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

Doňuz bilen katalogy nädip gysmaly

“Pigz” -iň bukjany gysmak üçin mümkinçilikleri ýok, diňe ýekeje faýly gysýar. Doňdurma hökmünde, pigz zip kataloglaryna tar buýrugy bilen bilelikde ulanylýar.

Katalogy gysmak üçin, görkezilişi ýaly --use-compress-program argumentini ulanyň:

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

Gysylanda prosessorlaryň sanyny nädip çäklendirmeli

Pigz peýdaly guralyň faýllary gysanda birnäçe ýadro we prosessor ulanýandygyny öňem aýdypdyk. -p opsiýasyny ulanyp ulanyljak ýadro sanyny kesgitläp bilersiňiz.

Bu mysalda aşakda asyl faýly (-k) saklamak bilen 4 prosessor (-p4) bilen iň gowy gysyşy ( -9 bilen görkezilýär) ulandyk.

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

Doňuz ulanyp, faýllary nädip dekompressiýa etmeli

Pigz ulanyp, bir faýly ýa-da katalogy açmak üçin -d opsiýasyny ýa-da unpigz buýrugyny ulanyň.

Gysylan ISO faýlymyzy ulanyp, buýruk bolar:

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

Doňuz vs Gzip arasyndaky deňeşdirme

Biraz öňe gitdik we Pigz-i Gzip guralyna dakdyk.

Netijeler:

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

Deňeşdirmekden, Doňuz üçin gysyş we dekompressiýa wagtlarynyň Gzip-den has gysgadygyny görüp bileris. Bu, “Pigz” buýruk setiriniň guralynyň Gzip guralyndan has çaltdygyny aňladýar

Doňuz buýrugynyň ulanylyşy barada has giňişleýin maglumat üçin adam sahypalaryna giriň.

$ man pigz

Mundan başga-da, pigz buýrugy bilen ulanmak üçin bar bolan ähli wariantlary görmek üçin aşakdaky buýrugy işlediň.

$ pigz --help

Şol ýerde-de bar. “Pigz” buýruk setiriniň guralyny ýapdyk we faýllary nädip gysyp we dekompressiýa edip boljakdygyny görkezdik. Has öňe gidip, Doňuzy Gzip bilen deňeşdirdik we gysyşyň hem-de dekompressiýanyň tizligi taýdan Pigz-iň ikisinden has gowudygyny bildik. Size atmaga we nähili gidendigini aýdyp bermäge çagyrýarys.