XZ Utils (xz-utils atau hanya xz) adalah proyek perangkat lunak open source dan benar-benar gratis yang menyediakan semua utilitas penting untuk bekerja dengan XZ tarballs pada sistem operasi GNU / Linux. Ini memungkinkan Anda untuk mengekstrak arsip yang diakhiri dengan ekstensi file .xz atau .lzma, serta untuk mengompresi file dan folder dengan metode kompresi XZ, menghasilkan arsip .xz, .lzma, tar.xz atau tar.lzma.
Salah satu algoritma kompresi yang paling kuat
XZ tidak diragukan lagi merupakan salah satu algoritma kompresi paling kuat di dunia, dan berjalan pada sistem GNU / Linux. Ia mampu membuat arsip yang dua atau tiga kali lebih kecil daripada metode kompresi populer lainnya, seperti RAR, ZIP, GZ atau BZ2. Untuk lebih tepat, arsip XZ memiliki 15% lebih kecil dari tarbal bzip2 dan dengan 30% lebih kecil dari file gzip.
Apa yang ada di kotak?
XZ Utils atau xz-utils atau xz adalah nama resmi dari paket, yang dapat dengan mudah diinstal pada banyak sistem operasi GNU / Linux dari repositori perangkat lunak default mereka. Ini terdiri dari pustaka kompresi liblzma, alat baris perintah xz, dan alat dekompresi xzdec-only.
Selain itu, ia datang dengan satu set skrip shell, termasuk xzgrep, xzegrep, xzfgrep, xzless, xzmore, xzcat, xzcmp dan xzdiff, yang memungkinkan Anda untuk melihat, membandingkan dan arsip XZ grep, serta komponen yang diperlukan untuk menangani arsip LZMA, yang sekarang tidak digunakan lagi oleh XZ. Perintah XZ mencakup beberapa opsi penting, termasuk kemampuan untuk memaksa dekompresi dan kompresi.
Platform yang didukung
Perangkat lunak kompresi data XZ secara resmi didukung pada GNU / Linux, GNU / HURD, BSD (FreeBSD, OpenBSD, NetBSD, Dragonfly BSD dan MirBSD), MINIX, Solaris, IRIX, AIX, QNX, Mac OS X, Haiku , HP-UX, Tru64, OpenVMS, OpenVOS, IBM OS / 2, DOS (FreeDOS dan MS-DOS), serta Microsoft Windows 95 dan yang lebih baru.
Apa yang baru dalam rilis ini:
- liblzma:
- Izinkan 0 sebagai batas penggunaan memori daripada mengembalikan LZMA_PROG_ERROR. Sekarang 0 diperlakukan seolah-olah 1 byte ditentukan, yang secara efektif sama dengan 0.
- Gunakan & quot; noexcept & quot; kata kunci, bukan & quot; lempar () & quot; di header publik ketika kompiler C ++ 11 (atau yang lebih baru) digunakan.
- Menambahkan perbaikan portabilitas untuk Intel C Compiler terbaru.
- File Microsoft Visual Studio telah dipindahkan di bawah windows / vs2013 dan windows / vs2017.
- xz:
- Perbaiki & quot; xz --list --robot missing_or_bad_file.xz & quot; yang akan mencoba mencetak string bersatu dan dengan demikian menghasilkan output sampah. Karena status keluar tidak nol, sebagian besar penggunaan perintah semacam itu tidak akan mencoba menginterpretasikan output sampah.
- & quot; xz --list foo.xz & quot; dapat mencetak & quot; Kesalahan internal (bug) & quot; dalam kasus sudut di mana batas penggunaan memori spesifik telah ditetapkan.
Apa yang baru dalam versi:
- xz:
- Selalu tutup file sebelum mencoba menghapusnya untuk menghindari masalah pada beberapa kombinasi sistem operasi dan sistem file.
- Memperbaiki masalah cap waktu file pada Windows.
- Menambahkan dukungan kotak pasir eksperimental (dinonaktifkan secara default) menggunakan Capsicum (FreeBSD & gt; = 10). Lihat --mengaktifkan-kotak pasir di INSTALL.
- Perbaikan kesesuaian C99 / C11 ke liblzma. Masalah memengaruhi setidaknya membangun menggunakan pengoptimalan tautan-waktu.
- Memperbaiki bug dalam fungsi lzma_index_dup yang jarang digunakan ().
- Penggunaan kode SHA-256 eksternal sekarang dinonaktifkan secara default. Ini masih bisa diaktifkan dengan meneruskan --enable-external-sha256 untuk mengkonfigurasi. Alasan untuk menonaktifkannya secara default (lihat INSTALL untuk lebih jelasnya) ...
- Beberapa implementasi SHA-256 OS tertentu konflik dengan OpenSSL dan menyebabkan masalah dalam program yang terkait dengan liblzma dan libcrypto. Setidaknya FreeBSD 10 dan MINIX 3.3.0 terpengaruh.
- SHA-256 internal lebih cepat daripada kode SHA-256 dalam beberapa sistem operasi.
- Mengubah deteksi jumlah inti CPU untuk menggunakan sched_getaffinity () pada GNU / Linux dan GNU / kFreeBSD.
- Perbaikan sistem build dan xz untuk membuat buildable xz bahkan ketika encoders, decoders, atau threading telah dinonaktifkan dari libilzma menggunakan opsi konfigurasi. Perbaikan ini menambahkan dua #defines baru ke config.h: HAVE_ENCODERS dan HAVE_DECODERS.
Apa yang baru di versi 5.2.2:
- Memperbaiki bug dalam kode khusus QNX.
- Menghilangkan penggunaan pipe2 () bahkan jika tersedia untuk menghindari masalah portabilitas dengan beberapa kombinasi Linux dan glibc lama.
- Terjemahan Jerman yang diperbarui.
- Menambahkan file proyek untuk membangun liblzma statis dan bersama (bukan keseluruhan Utilitas XZ) dengan pembaruan Visual Studio 2013 2 atau yang lebih baru.
- Didokumentasikan bahwa dekompresi berulir belum diimplementasikan. Entri BERITA 5.2.0 yang menjelaskan dukungan multi-threading salah telah mengatakan & quot; dekompresi & quot; kapan seharusnya mengatakan & quot; kompresi & quot;.
Apa yang baru di versi 5.2.1:
- Memperbaiki regresi rasio-kompresi dalam mode cepat LZMA1 dan LZMA2. Bug hadir dalam rilis 5.1.4beta dan 5.2.0.
- Memperbaiki masalah portabilitas di xz yang mempengaruhi setidaknya OpenBSD.
- Perbaiki xzdiff agar kompatibel dengan mktemp FreeBSD yang berbeda dari kebanyakan implementasi mktemp lainnya.
- Mengubah deteksi jumlah inti CPU untuk menggunakan cpuset_getaffinity () pada FreeBSD.
Apa yang baru di versi 5.2.0:
- Semua perbaikan dari 5.0.8
- liblzma: Memperbaiki lzma_stream_encoder_mt_memusage () saat preset digunakan.
- xzdiff: Jika mktemp tidak diinstal, mkdir akan digunakan sebagai fallback untuk membuat direktori sementara. Instalasi mktemp masih disarankan.
- Diperbarui terjemahan Prancis, Jerman, Italia, Polandia, dan Vietnam.
Apa yang baru di versi 5.0.7:
- Semua perbaikan dari 5.0.6
- liblzma: Memperbaiki penggunaan preset dalam inisialisasi enkode berulir.
- xz --block-list dan --block-size sekarang bisa digunakan bersama dalam mode single-threaded. Sebelumnya kombinasi hanya bekerja dalam mode multi-berulir.
- Menambahkan dukungan untuk LZMA_IGNORE_CHECK ke liblzma dan membuatnya tersedia di xz sebagai --kirim-keluar.
- optimasi kecepatan liblzma:
- Inisialisasi encoder LZMA1 atau LZMA2 baru telah dioptimalkan. (Kecepatan reinitialisasi enkoder yang sudah dialokasikan tidak terpengaruh.) Ini membantu ketika mengompresi banyak buffer kecil dengan lzma_stream_buffer_encode () dan situasi serupa lainnya di mana keadaan enkoder yang telah dialokasikan tidak digunakan kembali. Kecepatan ini terlihat dalam xz juga jika seseorang memampatkan banyak file kecil satu per satu alih-alih menjalankan xz sekali dan memberikan semua file sebagai argumen baris perintah.
- Perbandingan buffer sekarang jauh lebih cepat ketika akses yang tidak selaras diizinkan (dikonfigurasi dengan --enable-unaligned-access). Ini mempercepat pengkodean secara signifikan. Ada kode spesifik-lengkungan untuk 32-bit dan 64-bit x86 (32-bit membutuhkan SSE2 untuk hasil terbaik dan tidak ada deteksi CPU run-time untuk saat ini). Untuk lengkungan lain hanya ada kode generik yang mungkin tidak seoptimal mungkin solusi khusus-lengkung.
- Beberapa pengoptimalan kecepatan dilakukan pada kode SHA-256. (Perhatikan bahwa kode SHA-256 yang dibangun tidak digunakan pada semua sistem operasi.)
- liblzma sekarang dapat dibangun dengan MSVC 2013 pembaruan 2 atau lebih baru menggunakan windows / config.h.
- terjemahan bahasa Vietnam ditambahkan.
Apa yang baru di versi 5.0.6:
- liblzma: Memperbaiki penggunaan preset dalam inisialisasi enkode berulir.
- xz --block-list dan --block-size sekarang bisa digunakan bersama dalam mode single-threaded. Sebelumnya kombinasi hanya bekerja dalam mode multi-berulir.
- Menambahkan dukungan untuk LZMA_IGNORE_CHECK ke liblzma dan membuatnya tersedia di xz sebagai --kirim-keluar.
- optimasi kecepatan liblzma:
- Inisialisasi encoder LZMA1 atau LZMA2 baru telah dioptimalkan. (Kecepatan reinitialisasi enkoder yang sudah dialokasikan tidak terpengaruh.) Ini membantu ketika mengompresi banyak buffer kecil dengan lzma_stream_buffer_encode () dan situasi serupa lainnya di mana keadaan enkoder yang telah dialokasikan tidak digunakan kembali. Kecepatan ini terlihat dalam xz juga jika seseorang memampatkan banyak file kecil satu per satu alih-alih menjalankan xz sekali dan memberikan semua file sebagai argumen baris perintah.
- Perbandingan buffer sekarang jauh lebih cepat ketika akses yang tidak selaras diizinkan (dikonfigurasi dengan --enable-unaligned-access). Ini mempercepat pengkodean secara signifikan. Ada kode spesifik-lengkungan untuk 32-bit dan 64-bit x86 (32-bit membutuhkan SSE2 untuk hasil terbaik dan tidak ada deteksi CPU run-time untuk saat ini). Untuk lengkungan lain hanya ada kode generik yang mungkin tidak seoptimal mungkin solusi khusus-lengkung.
- Beberapa pengoptimalan kecepatan dilakukan pada kode SHA-256. (Perhatikan bahwa kode SHA-256 yang dibangun tidak digunakan pada semua sistem operasi.)
- liblzma sekarang dapat dibangun dengan MSVC 2013 pembaruan 2 atau lebih baru menggunakan windows / config.h.
- terjemahan bahasa Vietnam ditambahkan.
Komentar tidak ditemukan