当前位置: 首页>>技术教程>>正文


我应该使用xz还是lzma压缩?

,

问题描述

我想知道,因为在Ubuntu 10.10中我有能力创建xz和lzma档案。我应该切换到xz吗?

http://en.wikipedia.org/wiki/Xz

http://en.wikipedia.org/wiki/Lzma

最佳解决方案

This benchmark提供了有关此问题的一些有用信息。似乎LZMA的压缩比和性能略好于XZ,但由于’practical reasons'(我不确定它们是什么),XZ通常是首选。

XZ是lzma2算法的一种实现,更适合压缩’uncompressable’数据:

lzma2 is the method of compression employed by the 7-Zip LZMA2 compressor. LZMA2 is a modified version of LZMA that offers a better compression ratio for uncompressible data (random data expands about 0.005%, compared to 1.35% with original LZMA), and optionally can compress multiple parts of large files in parallel, greatly increasing compression speed but with a possible reduction in compression ratio (see LZMANumBlockThreads). Like LZMA, it can consume a lot of memory; see the above table. If a compression level isn’t specified, it defaults to max.

(http://www.jrsoftware.org/ishelp/index.php?topic=setup_compression)

你可以使用其中任何一个。

次佳解决方案

我不同意@ dv3500ea的结论,“可以使用任何一种”,因为它不合适。即使在发布的日期/时间,已知.lzma文件完全被.xz替换。 Utils has said publicly的作者,用户应转换为XZ-Utils≥5.00。最后一个LZMA-Utils版本是2008-07-30,并已停产。

LZMA Utils are legacy data compression software with high compression ratio. LZMA Utils are no longer developed, although critical bugs may be fixed as long as fixing them doesn’t require huge changes to the code.

Users of LZMA Utils should move to XZ Utils. XZ Utils support the legacy .lzma format used by LZMA Utils, and can also emulate the command line tools of LZMA Utils. This should make transition from LZMA Utils to XZ Utils relatively easy.

决定因素可能不是压缩,虽然具有讽刺意味的是它是这个例子。 “practical reasons”是self-evident,是使用XZ-Utils的重要原因。此外,.xz格式允许您指定压缩算法和过滤器,因此.xz文件可以使用LZMA或LZMA2。避免创建新的.lzma文件,它们被视为传统格式。

至于保持LZMA-Utils:不要。 XZ-Utils支持传统的.lzma文件。它还包含仍使用LZMA-Utils的脚本的包装器。如果所有这些原因仍然不足,Ubuntu会从其存储库中删除遗留的lzma-utils。

第三种解决方案

绝对不应该像别人说的那样使用lzma。

lzip格式的作者Antonio Diaz Diaz说,Xz format is inadequate for long-term archiving。如果要备份重要文件,请考虑其他文件格式,例如bzip2,它具有损坏恢复工具。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/6579.html,未经允许,请勿转载。