xz is an LZMA2-based data compression utility. Typically, files compressed with LZMA2 compression are 30% smaller than equivalent gzip files and 15% smaller than equivalent bzip2 files.
The app-arch/xz-utils package provides utilities for mangling xz-compressed files:
emerge --ask app-arch/xz-utils
xz has multiple compression levels available. The default is -6. The normal highest level is -9.
If the user is willing to accept more memory usage and time to compress, --extreme (-e) can be used with a numerical level to increase the intensity, e.g. xz -9e.
All modern versions of xz can compress in parallel, but only >=app-arch/xz-utils-5.3.3_alpha can decompress in parallel. Archives must be compressed using the parallel compressor (which will become the default in 5.3.3_alpha too) for parallel decompression.
Until a stable release of xz-utils (5.3.3) containing parallel decompression is made, app-arch/pixz can be used for parallel decompression but only with archives made using pixz.
As a result of some tools using pixz opportunistically, simply installing pixz can be useful even without configuration.
xz can be configured via environment variables: XZ_DEFAULTS is intended for system administration, while XZ_OPT is intended for scripts to set defaults.
Create the following file:
# -T0: compress and decompress with the number of cores available # -9: use maximum compression level (but not extreme) XZ_DEFAULTS="-9 -T0"
env-update && . /etc/profile
To use xz for Portage compression of both installed files and binary packages:
The kernel must be compiled with support for xz compression!
To use xz for Dracut's compression of initramfs:
systemd has a Meson configuration option default-compression to allow choosing the preferred default compression algorithm.
To use xz:
emerge --ask --depclean --verbose app-arch/xz-utils
- p7zip — a command-line port of 7-Zip for POSIX compliant systems such as Unix, OS X, BeOS, and Amiga.
- tar — an archiver tool that provides the ability to create tar archives, as well as various other kinds of manipulation.
- zip — provides classic zip compression.