Linuxの圧縮/解凍

本頁では、UNIX系OSで標準的に用いられる、GNUプロジェクト発のデータ圧縮プログラムである「gzip」について説明する。

Windows系OSではもっぱらzip方式が用いられるが、これは同一のアルゴリズム(LZ77+ハフマン符号)を用いる点は同一であるが、互換性は無い。コマンド「gzip」を用いて、gzipのユーティリティプログラムを利用することが可能である。

かつてのUNIXでは、コマンド「compress」が標準で搭載されており、データの圧縮にはこれが用いられていた。しかし特許の関係から無償ではなくなった。gzipは、ソースコード・プログラムのオープン化を唱えるGNUプロジェクトによって置き換えを狙い開発されたものである。

Windows系OSのzip等とは異なり、複数のファイルを1つにまとめるアーカイバとしての機能は持たない。そこで、GNUプロジェクトで開発されたアーカイバ「tar」と併用して用いられるのが普通である。

Linuxのカーネルイメージの圧縮やHTTP通信時の際にも利用されている。

より効率的な圧縮としてbzip2がある。
bzip2もまた、特許のために開発継続が不可能となったbzipの無償版で、置き換えを狙ったものである。本頁では、これについても同時に扱う。


利用

Linuxでは、先述した通り、コマンド「gzip」ではなくコマンド「tar」を通じてgzipのユーティリティを利用されることが多い。

解凍

解凍は、オプション「z」「x」を用いる。

# tar zxvf hoge.tar.gz

これは、以下のコマンドとして置き換えられる。

# gzip -dc hoge.tar.gz | tar xvf -

圧縮

圧縮は、オプション「z」「c」を用いる。

# tar zcvf hoge.tar.gz test

  • 最終更新:2009-12-20 01:17:04

このWIKIを編集するにはパスワード入力が必要です

認証パスワード