Được viết bởi Mark Adler, Pigz là từ viết tắt của Parallel Implementation của GZip. Đó là một công cụ nén tiện lợi giúp bạn nén các tệp với tốc độ cực nhanh. Là một cải tiến của tiện ích gzip cũ tốt, nó sử dụng nhiều lõi và bộ xử lý để nén dữ liệu.
Hướng dẫn này chiếu nhiều ánh sáng hơn Pigz và hướng dẫn bạn cách sử dụng tiện ích để nén tệp trong hệ thống Linux.
Contents
Cài đặt Pigz trên hệ thống Linux
Đang cài đặt Pigz là một cuộc đi bộ trong công viên bởi vì Pigz được chứa trong kho lưu trữ chính thức cho các bản phân phối chính như Debianvà CentOS.
Bạn có thể cài đặt Pigz trong một lệnh duy nhất trong các bản phân phối khác nhau bằng cách sử dụng trình quản lý gói tương ứng của chúng như sau.
$ 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
Cách nén tệp bằng Pigz
Để nén một tệp thành định dạng zip, hãy sử dụng cú pháp.
$ pigz filename
Trong hướng dẫn này, chúng tôi sẽ sử dụng tệp ubuntu-20.04-beta-desktop-amd64.iso cho mục đích trình diễn. Để nén tệp, hãy thực thi:
$ pigz ubuntu-20.04-beta-desktop-amd64.iso
Tuy nhiên, lệnh xóa tệp gốc khi nén như bạn có thể nhận thấy. Để giữ lại tệp gốc sau khi nén, hãy chạy bằng cách sử dụng -k như hình.
$ pigz -k ubuntu-20.04-beta-desktop-amd64.iso

Từ kết quả đầu ra, chúng ta có thể thấy rõ rằng tệp gốc đã được giữ lại ngay cả sau khi nén.
Kiểm tra nội dung của tệp nén trong Linux
Để kiểm tra nội dung của tệp nén, bao gồm cả số liệu thống kê về tỷ lệ nén đạt được, hãy sử dụng -l pigz:
$ pigz -l ubuntu-20.04-beta-desktop-amd64.iso.gz

Từ đầu ra, bạn không chỉ xem được nội dung của tệp nén mà còn cả phần trăm nén trong trường hợp này là 1.9%.
Ngoài ra, bạn có thể sử dụng các cấp độ nén khác nhau tồn tại từ 1 đến 9. Các mức nén sau được hỗ trợ:
- 6 – Nén mặc định.
- 1 – Nhanh nhất nhưng cung cấp ít nén nhất.
- 9 – Nén chậm nhất nhưng tốt nhất.
- 0 – Không nén.
Ví dụ: để nén tệp với mức nén tốt nhất, hãy thực thi:
$ pigz -9 ubuntu-20.04-beta-desktop-amd64.iso
Cách nén thư mục với Pigz
Bởi bản thân, Pigz không có tùy chọn để nén một thư mục, nó chỉ nén các tệp đơn lẻ. Như một giải pháp thay thế, pigz được sử dụng cùng với lệnh tar để nén các thư mục.
Để nén một thư mục, hãy sử dụng –use-compress-program đối số như được hiển thị:
$ tar --use-compress-program="pigz -k " -cf dir1.tar.gz dir1

Làm thế nào để giới hạn số lượng bộ xử lý trong khi nén
Chúng tôi đã đề cập trước đó rằng pigz sử dụng nhiều lõi & bộ xử lý khi nén tệp. Bạn có thể chỉ định số lõi sẽ được sử dụng bằng cách sử dụng -p.
Trong ví dụ này, bên dưới, chúng tôi đã sử dụng cách nén tốt nhất (biểu thị bằng -9) với 4 bộ xử lý (-p4) trong khi vẫn giữ lại tệp gốc (-k).
$ pigz -9 -k -p4 ubuntu-20.04-beta-desktop-amd64.iso
Cách giải nén tệp bằng Pigz
Để giải nén một tệp hoặc thư mục bằng pigz, hãy sử dụng -d hoặc là unpigz.
Sử dụng tệp ISO nén của chúng tôi, lệnh sẽ là:
$ pigz -d ubuntu-20.04-beta-desktop-amd64.iso OR $ unpigz dir1.tar.gz

So sánh giữa Pigz và Gzip
Chúng tôi đã đi xa hơn một chút và đọ sức Pigzst Gzip.
Đây là kết quả:
Nén Gzip
$ time gzip ubuntu-20.04-beta-desktop-amd64.iso

Nén Pigz
$ time pigz ubuntu-20.04-beta-desktop-amd64.iso

Giải nén Gzip
$ time gzip -d ubuntu-20.04-beta-desktop-amd64.iso.gz

Giải nén Pigz
$ time unpigz ubuntu-20.04-beta-desktop-amd64.iso.gz

Từ so sánh, chúng ta có thể thấy rõ rằng thời gian nén và giải nén cho Pigz ngắn hơn nhiều so với Gzip. Điều này ngụ ý rằng công cụ dòng lệnh Pigz nhanh hơn nhiều so với công cụ Gzip
Để biết thêm chi tiết về việc sử dụng pigzhãy truy cập các trang người đàn ông.
$ man pigz
Hơn nữa, hãy chạy lệnh bên dưới để xem tất cả các tùy chọn có sẵn để sử dụng với pigz.
$ pigz --help

Và bạn có nó rồi đấy! Chúng tôi đã bao gồm pigzcông cụ -line và chỉ cho bạn cách bạn có thể nén và giải nén các tệp. Chúng tôi đã đi xa hơn và so sánh Pigz Gzip và phát hiện ra rằng Pigz là tốt hơn cả hai về tốc độ nén và giải nén. Chúng tôi mời bạn thử và cho chúng tôi biết nó đã diễn ra như thế nào.