出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2024/04/10 00:09 UTC 版)
|
|
この記事の出典や参考文献は、一次資料や記事主題の関係者による情報源に頼っています。
|
|
この項目「Lzip」は翻訳されたばかりのものです。不自然あるいは曖昧な表現などが含まれる可能性があり、このままでは読みづらいかもしれません。(原文:英語版 "lzip" 2024年4月8日 (月) 14:54 (UTC))
修正、加筆に協力し、現在の表現をより自然な表現にして下さる方を求めています。ノートページや履歴も参照してください。(2024年4月) |
| |
|
| 開発元 | Antonio Diaz Diaz |
|---|---|
| 初版 | 2008年 |
| 最新版 | |
| リポジトリ | |
| プログラミング 言語 |
C++またはC言語 |
| 対応OS | |
| プラットフォーム | クロスプラットフォーム |
| サポート状況 | 開発中 |
| 種別 | データ圧縮 |
| ライセンス | GNU GPLのバージョン2かそれ以降[2](自由ソフトウェア) |
| 公式サイト | www |
| 拡張子 | .lz |
|---|---|
| MIMEタイプ | application/lzip |
| マジック ナンバー |
0x4C 0x5A 0x49 0x50('LZIP') |
| 開発者 | Antonio Diaz Diaz |
| 種別 | データ圧縮 |
| オープン フォーマット |
Yes |
lzipは、Lempel-Ziv-Markov chain-Algorithm(LZMA)を使用し、gzipやbzip2などのよくあるUnix系の圧縮ツールの利用者に馴染み深いユーザインタフェースを備えたデータを圧縮するための自由なコマンドラインツールである。
gzipやbzip2と同様に、複数のファイルを圧縮するための結合をサポートしているが、tarやcpioなどのUnix系のプログラムによってアーカイブファイルにまとめてから圧縮するのが慣例である。lzipはマルチボリュームアーカイブを作成するために出力を分割できる。
lzipはgzipと同程度の速度での圧縮か[注釈 1]、殆どのファイルをbzip2よりも圧縮できる[注釈 2][2]。また、gzipとbzip2の中間の速度で展開できる[2]。
lzipによって生成されるファイルには通常拡張子として.lzが付けられ、メディアタイプはapplication/lzipとなる。
lzipのプログラム群はAntonio Diaz DiazによってC++とC言語で書かれており、GNU General Public License(GNU GPL)のバージョン2かそれ以降の条件に基づいて自由ソフトウェアとして配布されている。
7-Zipは2000年に公開された。Unix系オペレーティングシステムでLZMAを使用するツールが利用できるようになったのは、2004年に7-Zipのコマンドライン版の移植版のp7zipが公開されて以降である。同年、lzma_aloneと呼ばれるプログラムを含むLZMA SDK(ソフトウェア開発キット)が公開された。それから1年以内にLasse Collinが(当初は)lzma_aloneにgzip風のインタフェースを実装するラッパースクリプト群だけで構成されたLZMA Utilsを公開した。2008年、Antonio Diaz Diazは生のLZMAデータストリームの代わりにチェックサムとマジックナンバーを含むコンテナフォーマットを使用するlzipを公開し、LZMAを使用するための完全なUnix様式の解決策を提供した。それにも関わらず、LZMA Utilsは同様の機能を持つように拡張され、XZ Utilsに改名された[3]。
lzipは「マルチメンバーアーカイブ」と呼ばれる独立して展開できるデータセクションを持つアーカイブを作成できる[注釈 3][4]。例えば、基礎となるファイルがtarアーカイブである場合、アーカイブの他の部分が破損している場合でも破損していないファイルを展開できる。
ファイルフォーマットに関しては、各圧縮ストリームの統合された32ビットチェックサムによる整合性チェックの有効化に特に重点が置かれており[5]、破損したデータを検出して再構築するためにlziprecoverプログラムと組み合わせて使用される。この回復ツールは各複製のファイルの異なる部分に損傷がある可能性のあるアーカイブの複数の複製を統合できる[4]。
lzipにはデフォルトのディストリビューションで提供される2つの並列処理用のインタフェースがある[6]。
plzipはあらゆるファイルを並列圧縮する。従来のtarプログラムでは展開のためにファイルを見つける前にストリーム全体が必要であり、結果として非並列処理で展開が行われるので、これをtarと共に使用するだけでは不十分である。tarlzはtarとlzipを組み合わせて、RARや7-Zipのような現代的なアーカイバとよく似た並列アーカイバを作る。ソリッド圧縮ブロックはtarファイルの境界に合わせて配置されるので、ファイルを展開するにはその特定のメンバーブロックを展開するだけで済む。一般的なLinuxディストリビューションでは、lzipは通常公式パッケージリポジトリからインストールできる[7][8]。
Cygwinは保守されているオプションのパッケージとしてlzipを提供しており[注釈 4]、GNU tarユーティリティプログラムは.lzアーカイブをサポートしている[注釈 5]。Mingw-w64はMSYS2で保守されているパッケージを通じてlzipを配布している[注釈 6]。
AM_INIT_AUTOMAKEにdist-lzipを追加するとlzipで圧縮されたtarアーカイブを構築する[9]。