xz

xz
Filename extension .xz
Internet media type application/x-xz
Uniform Type Identifier (UTI) org.tukaani.xz-archive
Magic number 0xFD, '7', 'z', 'X', 'Z', 0x00
Developed by The Tukaani Project
Latest release
1.0.4
(27 August 2009 (2009-08-27))
Open format? Yes
Website tukaani.org/xz/format.html
XZ Utils
Developer(s) The Tukaani Project
Stable release
5.2.2 / 29 September 2015 (2015-09-29)[1]
License Public domain with some portions under LGPL
Website tukaani.org/xz/

xz is a lossless data compression program and file format which incorporates the LZMA/LZMA2 compression algorithms.

These are the same compression formats used by the 7-Zip program and its command-line version p7zip. However, .xz has a different file format, which is not compatible with the .7z format used by 7-Zip; notably, .7z lacks support for Unix-like file system metadata.[2]

Design

xz compresses/decompresses single files as input, and does not bundle multiple files into a single archive. It is therefore common to compress a file that is itself an archive, such as those created by the tar or cpio Unix programs.[2]

History

Although the original 7-Zip program, which implements LZMA2 compression, is able to produce small files at the cost of speed, it also created its own unique archive format which was made primarily for Windows and did not support Unix functionality.[2]

Implementation

An implementation of the xz file format is freely available online as XZ Utils. It is licensed under the terms of the GNU LGPL and GNU GPL, with the bulk of the software (e.g., liblzma) in the public domain.[3] Starting from 5.2, the command-line program xz supports multi-threaded operations which were only available in a fork called pxz previously. Version 1.22 of GNU tar supports using this software to handle xz files transparently.[4][5] FreeBSD tar has supported xz transparently since r191190 (released on April 17, 2009).

7-Zip has supported xz since 2009's version 9.04 beta (stable since 2010's 9.20) and WinRAR since version 5.[6]

Uses

xz has gained notability for compressing packages in the GNU coreutils project,[7] Debian family of systems deb (file format), openSUSE,[8] Fedora,[9] Arch Linux,[10] Slackware,[11] FreeBSD,[12] Gentoo,[13] GNOME,[14] and TeX Live,[15] as well as being an option to compress a compiled Linux kernel.[16] In March 2013, kernel.org announced the use of xz as the default compressed file format for distributing kernel archive files.[17]

See also

References

  1. XZ Utils Release Notes (Git), Tukaaani
  2. 1 2 3 Lindholm, Linux Gazette.
  3. XZ Utils Web site
  4. GNU tar Web site: References
  5. Changelog for Tar 1.22
  6. "release history", 7-Zip.
  7. "files", Coreutils (FTP), GNU (see version 7.1 and newer files ending in .tar.xz).
  8. "openSUSE has moved off of LZMA to xz", News, openSUSE.
  9. "XZ RPM payloads", Features (wiki) (12 ed.), Fedora.
  10. "Switching to xz compression for new packages", News, Archlinux.
  11. Entry (FTP) (changelog) (13.0 ed.), Slackware, May 8, 2009.
  12. Stable (mailing list post), Free BSD, Jan 2011.
  13. "Remove .lzma in favor of .xz portage snapshots", Dev (mailing list post) (RFC), Gentoo.
  14. "Important: Switch of GNOME tarball compression format", Devel (mailing list post), Gnome, Apr 2011.
  15. tex-archive/systems/texlive/tlnet/archive (directory), CTAN.
  16. xz embedded (Git), Tukaani.
  17. "XZ by default and JSON". The Linux Kernel Archives. Linux Kernel Organization, Inc. 2013-03-11.
This article is issued from Wikipedia - version of the 10/14/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.