XZ Compression, một công cụ nén dữ liệu không mất dữ liệu

Giới thiệu về nén XZ

Trong phần tiếp theo, chúng ta sẽ xem xét tiện ích nén xz. Một đồng nghiệp đã nói với chúng tôi về cô ấy cách đây một thời gian trong một bài báo về cách nén và giải nén tệp trong Ubuntu. Việc sử dụng công cụ này tương tự như gzip và bzip2.

Có thể được sử dụng cho nén hoặc giải nén tệp theo chế độ hoạt động đã chọn. Phương pháp nén được sử dụng bởi các tệp này là dựa trên thuật toán của LZMA/ LZMA2. Thuật toán này bắt đầu được phát triển vào cuối những năm 90. Nó sử dụng lược đồ từ điển nén tương tự như LZ77.

Thuật toán nén LZ77 thuộc họ máy nén không tổn hao, còn được gọi là máy nén văn bản. Chúng được biết đến với cái tên đó vì chúng không bỏ sót thông tin từ tệp khi nén nó. Không giống như máy nén sử dụng thuật toán loại mất mát. Những điều này bỏ qua một số thông tin tìm cách giảm đáng kể kích thước của tệp gốc. Ví dụ về điều này sẽ là jpeg, MP3, MPG, v.v.

So với các tệp "gz", "xz" có tỷ lệ nén tốt hơn và thời gian giải nén ngắn hơn. Tuy nhiên, khi chúng ta sử dụng cài đặt nén mặc định, nó sẽ yêu cầu nhiều bộ nhớ hơn để giải nén. Gzip có mức sử dụng bộ nhớ thấp hơn một chút.

Các tệp .xz được sử dụng để nén và giải nén dữ liệu, do đó, việc truyền tệp qua Internet hoặc lưu trữ thông tin trên ổ cứng sẽ ít bị chiếm dụng hơn. Tóm lại, nếu chúng ta muốn nén một tệp tin để chiếm ít dung lượng nhất có thể, chúng tôi có tùy chọn để nén nó bằng xz.

Cách sử dụng tính năng nén XZ

Nén

El ví dụ đơn giản nhất Nén tệp với xz như sau. Trong terminal (Ctrl + Alt + T), chúng tôi viết:

Nén tệp với XZ

xz android-x86_64-7.1-r2.iso

Bạn cũng có thể sử dụng -z tùy chọn để thực hiện nén:

xz -z android-x86_64-7.1-r2.iso

Các lệnh này sẽ nén tệp, nhưng sẽ xóa tệp nguồn. Đúng chúng tôi không tìm cách xóa các tệp nguồn, chúng tôi sẽ sử dụng -k tùy chọn như sau:

nén xz -k để tôn trọng nguồn dữ liệu

xz -k android-x86_64-7.1-r2.iso

Giải nén

Để giải nén một tệp, chúng tôi sẽ có thể sử dụng -d tùy chọn:

xz -d android-x86_64-7.1-r2.iso

Chúng tôi cũng có thể đạt được điều tương tự với tùy chọn unxz:

unxz android-x86_64-7.1-r2.iso

Lực nén

Nếu một hoạt động không thành công, ví dụ: nếu có một tệp nén có cùng tên, chúng tôi sẽ sử dụng -f tùy chọn để buộc quá trình:

xz -kf android-x86_64-7.1-r2.iso

Đặt mức nén

Công cụ này hỗ trợ các mức nén đặt trước khác nhau (0 đến 9. Với giá trị mặc định là 6). Chúng tôi cũng sẽ có thể sử dụng bí danh as –fast (nó sẽ nhanh, nhưng ít nén hơn) để đặt thành giá trị 0 và –best để đặt thành giá trị 9 (nén chậm nhưng cao hơn). Sau đây là một số ví dụ về cách đặt các mức này:

xz -k -8 android-x86_64-7.1-r2.iso

xz -k --best android-x86_64-7.1-r2.iso

Giới hạn bộ nhớ

Trong trường hợp có một lượng nhỏ bộ nhớ hệ thống và muốn nén một tệp lớn, chúng tôi sẽ có khả năng sử dụng -memory option = giới hạn (giá trị giới hạn có thể tính bằng MB hoặc phần trăm RAM) để đặt giới hạn sử dụng bộ nhớ để nén:

xz -k --best --memlimit-compress=10% android-x86_64-7.1-r2.iso

Bật chế độ im lặng

Nếu chúng tôi quan tâm đến việc thực hiện nén ở chế độ im lặng, chúng tôi sẽ chỉ phải thêm -q tùy chọn. Chúng tôi cũng có thể kích hoạt chế độ tiết với -v, như nó được hiển thị trong phần sau:

xz -k -q android-x86_64-7.1-r2.iso

xz -k -qv android-x86_64-7.1-r2.iso

Tạo tệp tar.xz

Sau đây là một ví dụ về việc sử dụng để có được một tệp có phần mở rộng tar.xz.

tạo tệp tar.xz tùy chọn 1

tar -cf - *.txt | xz -7 > txtfiles.tar.xz

Để đạt được mục đích tương tự, chúng ta cũng có thể sử dụng:

Tạo tệp tar.xz tùy chọn 2

tar -cJf txtfiles.tar.xz *.txt

Kiểm tra tính toàn vẹn của các tệp nén

Chúng tôi có thể kiểm tra tính toàn vẹn của các tệp nén bằng cách sử dụng -t tùy chọn. Sử dụng -l chúng ta có thể xem thông tin về một tệp nén.

xz -t txtfiles.tar.xz

xz -l txtfiles.tar.xz

Người đàn ông XZ

Đây là một công cụ tốt để nén các tập tin. Trong bài này, chúng ta chỉ xem xét một số ví dụ để nén và giải nén. Để biết thêm thông tin về mọi thứ chúng tôi có thể làm, bạn có thể vào trang người đàn ông xz.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.