it-swarm.cn

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

我想知道自从在Ubuntu 10.10起,我是否能够创建xz和lzma存档。我应该切换到xz吗?

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

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

29
NightwishFan

此基准 提供了有关此问题的一些很好的信息。看起来LZMA的压缩率和性能比XZ略好,但由于“实际原因”,XZ通常是首选(我不确定这些是什么)。

XZ是lzma2算法的一种实现,它更适合压缩“不可压缩”数据:

lzma2是7压缩LZMA2压缩器采用的压缩方法。 LZMA2是LZMA的修改版本,可为不可压缩的数据提供更好的压缩率(随机数据扩展了约0.005%,而原始LZMA则为1.35%),并且可以并行压缩大型文件的多个部分,从而大大提高了压缩速度,但可能会降低压缩率(请参阅LZMANumBlockThreads)。像LZMA一样,它会消耗大量内存。参见上表。如果未指定压缩级别,则默认为最大。

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

您应该可以使用其中任何一个。

12
dv3500ea

我不同意@ dv3500ea的结论,“可以使用任一方法”,因为这是不合适的。即使在发布的日期/时间,.lzma个文件也被.xz完全替换。两个Utils的作者 已公开表示 ,用户应过渡到XZ-Utils≥5.00。最新的LZMA-Utils版本是2008-07-30,并已停产。

LZMA Utils是具有高压缩率的传统数据压缩软件。 LZMA Utils不再开发,尽管关键的bug可以修复,只要修复它们不需要对代码进行大量更改即可。

LZMA Utils的用户应移至XZ Utils。 XZ Utils支持LZMA Utils使用的旧.lzma格式,并且还可以模拟LZMA Utils的命令行工具。这应该使从LZMA Utils到XZ Utils的转换相对容易。

决定性的因素可能不是压缩,尽管具有讽刺意味的是,在本示例中。 “实际原因”是使用XZ-Utils的不言而喻的重要原因。此外,.xz格式允许您指定压缩算法和过滤器,因此.xz文件可以使用LZMA或LZMA2。避免创建新的.lzma文件,它们被认为是旧格式。

至于甚至保留LZMA-Utils:请勿。 XZ-Utils支持旧版.lzma文件。它还具有针对仍使用LZMA-Utils的脚本的包装器。如果所有这些原因仍然不足,Ubuntu会从其存储库中删除旧的lzma-utils。

42
J. M. Becker

绝对不应该像其他人一样使用lzma。

Lzip格式的作者Antonio Diaz Diaz说 Xz格式不足以进行长期归档 。如果要备份重要文件,请考虑其他文件格式,例如bzip2,它具有损坏恢复工具。

3
criticabug

xz是优选的,因为它具有最高的压缩率。但是,压缩速度较慢,但​​可以通过压缩来弥补。

0
Distant Graphics