Linux
 Computer >> コンピューター >  >> システム >> Linux

gzip(GNU zip)とは?仕組みや特徴をわかりやすく解説

gzip(GNU zip)とは?

gzip(GNU zip)は、フリーかつオープンソースのファイル圧縮アルゴリズムであり、GNUプロジェクトによって管理・開発されているソフトウェアです。

ここでいう「圧縮」とは、ストレージ容量の節約やデータ転送速度の向上を目的として、データのサイズを意図的に小さくすることを指します。gzipは、サーバー側でWebページを圧縮し、ブラウザ側でそれを展開するために最も広く利用されています。また、ストリーミングメディアの圧縮にも人気の高いフォーマットです。通常は個々のファイル(ソフトウェアのインストール用実行プログラムなど)の圧縮に使われますが、複数のストリームを同時に連結して圧縮することも可能です。

開発の経緯とcompressとの違い

gzipは、Jean-Loup Gailly(ジャン=ループ・ガイイ)とMark Adler(マーク・アドラー)によって、初期のUnixやLinuxで標準的に使われていたcompress形式の代替として開発されました。compressと比較すると、gzipはより高い圧縮率を実現できる点が大きな強みです。さらに、compressと異なり、独自(プロプライエタリ)なアルゴリズムを一切含んでいません。そのため、ライセンス面での制約を受けずに自由に利用できます。また、gzipはWindowsやMacintoshなど、Unix系以外のオペレーティングシステムでも問題なく動作します。

gzipファイルの構造

gzipで圧縮されたファイルには「.gz」という拡張子が付きます。ファイル内部には、10バイトのヘッダー、必要に応じた追加ヘッダー、チェックサム、そして元の非圧縮ファイルのサイズを示すデータが格納されています。

複数のファイルを1つにまとめて圧縮したアーカイブは、「tar.gz」ファイル(通称:tarball)として作成されるのが一般的です。なお、gzipはWindowsやMacintosh向けのzip圧縮ユーティリティと同様に、deflateと呼ばれる圧縮アルゴリズムを基盤としています。

圧縮ファイルの展開方法

gzipで圧縮されたファイルを元に戻す(展開・解凍する)には、gunzipという専用プログラムを使用します。コマンドラインから簡単に実行でき、圧縮前の状態へ復元することが可能です。

  1. LinuxでZipファイルを解凍する方法|GUIとコマンドラインの使い方を徹底解説

    Zipファイルは、ダウンロード速度が遅く1バイトでも節約が重要だった時代ほど頻繁には使われなくなりました。それでも今なお広く普及しているファイル形式の一つであり、いずれ開く必要に迫られることもあるでしょう。使用しているディストリビューションにもよりますが、Zipアーカイブの展開自体は比較的簡単です。とはいえ、より高度な操作方法や応用的なテクニックを知っておけば、いざというときにきっと役立ちます。GUIを使ってZipファイルを解凍する多くのLinuxデスクトップ環境では、Zipファイルの解凍は非常に簡単です。ファイルを右クリックすると複数のオプションが表示され、通常は「ここで展開」や「ここに解凍

  2. MacでファイルをZIP圧縮する方法を徹底解説|Windowsの手順もあわせて紹介

    Macでファイルの圧縮(ZIP化)のやり方をお探しですか?この記事では、macOSの標準機能を使ってファイルやデータをZIP形式に圧縮する手順を、ステップバイステップでわかりやすく解説します。 ファイル圧縮は、デジタルワークスペースを整理整頓するための最も便利な方法の一つです。ZIP形式を活用すれば、複数のファイルや大量のデータをより速いスピードで簡単に送信できます。ZIPは可逆圧縮(ロスレス圧縮)に対応した実用的なアーカイブ形式で、複数のファイルを1つのフォルダ/ファイルにまとめて送れるのが大きな特徴です。ストレージ容量を節約できるうえ、データ共有も高速化します。また、圧縮済みファイルは移