Ubuntu: 压缩与解压缩LZMA文件

作者: lesca 分类: FAQ,Tutorials,Ubuntu 发布时间: 2012-05-24 15:51

什么是LZMA格式呢?当遇到LZMA格式的压缩文档时我们该怎么解压呢?如果我们想创建LZMA该用什么工具呢?就让我们快速浏览一下吧。

1.什么是LZMA格式

LZMA(Lempel-Ziv-Markov chain-Algorithm的缩写)是2001年以来得到发展的一个数据压缩算法,它用于7-Zip归档工具中的7z格式。它使用类似于LZ77的字典编码机制,在一般的情況下压缩率比bzip2高,用于压缩的字典档案大小可达4GB。更多内容请读者参考[1]。

2.用tar解压缩LZMA文档

如果读者使用的tar工具是1.20以上版本,则可以直接使用tar来解压缩lzma文档:

tar --lzma -xvf file.tar.lama

如果没有,则需要安装lzma工具包:

sudo apt-get install lzma

使用其中的unlzma命令:

unlzma file.tar.lzma
tar -xvf file.tar

或者:

lzma -d filr.tar.lzma
tar -xvf file.ta

或者:

lzma -cd file.tar.lzma | tar xvf -

3.lzma命令参数说明

  • -c 等价于–stdout 或者 –to-stdout
  • -d 等价于–decompress 或者 –uncompress
  • -z 等价于-z 或者 –compress

/!\注意:
如果不指定-c参数,那么lzma命令会自动更名文档,而不是创建另一个文档。

3.创建LZMA档案

接下来创建lzma就简单多了:

lzma -z file.tar

4.获得LZMA档案信息(getinfo)

$ lzmainfo file.tar.lzma

可能得到的结果:

file.tar.lzma
Uncompressed size:             2 MB (1802240 bytes)
Dictionary size:               8 MB (2^23 bytes)
Literal context bits (lc):     3
Literal pos bits (lp):         0
Number of pos bits (pb):       2

References:

[1] Lempel–Ziv–Markov chain algorithm
[2] Linux / UNIX: Untar / Extract a .lzma Tar Ball
[3] man 1 lzma

版权声明

本文出自 Lesca 技术宅,转载时请注明出处及相应链接。

本文永久链接: https://www.lesca.cn/archives/compress-and-decompress-lzma-pacakge.html

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!