Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

gzファイル(ジーゼットファイル)とは | 意味や読み方など丁寧でわかりやすい用語解説

gzファイル(ジーゼットファイル)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。

作成日: 更新日:

読み方

日本語表記

ジーゼットファイル (ジーゼットファイル)

英語表記

gz file (ジーゼットファイル)

用語解説

gzファイルは、GNU Zip (GNU zip) というプログラムによって作成される圧縮ファイル形式である。主にUNIX系OS、特にLinux環境において、ファイルのサイズを効率的に削減するために広く利用される。この形式の主な目的は、ディスクスペースの節約、ネットワーク経由でのデータ転送時間の短縮、およびアーカイブの管理を容易にすることにある。gzファイルは、データの内容を損なわずにサイズを小さくする非可逆圧縮技術を利用しており、元のデータを完全に復元できる点が特徴である。通常、ファイル名の末尾に「.gz」という拡張子が付けられる。

gzファイルは、1992年にJean-loup GaillyとMark Adlerによって開発されたgzipプログラムによって生成される。これは、既存のUNIX標準圧縮ツールであったcompressの特許問題に対処し、より高い圧縮率と高速な処理を提供するために考案された。gzipは、データ圧縮アルゴリズムとしてLZ77系列のDeflateアルゴリズムを採用している。このアルゴリズムは、入力データの中で繰り返し現れるバイト列(パターン)を見つけ出し、そのパターンをより短い参照情報(オフセットと長さ)に置き換えることで圧縮を実現する。これにより、データの冗長性を削減し、ファイルサイズを小さくする。

gzipは単一のファイルを圧縮することを目的としたツールであり、複数のファイルをまとめて一つのアーカイブにする機能は持たない。そのため、複数のファイルを圧縮したい場合や、ディレクトリ構造を保ったまま圧縮したい場合には、まずtar(テープアーカイブ)コマンドを用いて複数のファイルやディレクトリを一つのアーカイブファイルにまとめる。そのアーカイブファイルをgzipで圧縮するのが一般的な運用方法である。この組み合わせで生成されるファイルは、「.tar.gz」または「.tgz」という拡張子を持つことが多く、これらはUNIX系OSにおけるソフトウェア配布やバックアップのデファクトスタンダードとして広く使われている。例えば、「package.tar.gz」というファイルは、「package」というディレクトリや複数のファイルがtarで一つにまとめられ、その後gzipで圧縮されたものであることを示す。

gzファイルの展開(解凍)は、通常gunzipコマンドによって行われる。例えば、「file.txt.gz」を元の「file.txt」に戻すには「gunzip file.txt.gz」を実行する。また、圧縮されたファイルの内容を直接表示したい場合には、zcatコマンドが便利である。これは、ファイルを展開せずに標準出力に内容を出力するため、一時的な内容確認に適している。最近のLinuxやmacOSなどのUNIX系OSでは、これらのコマンドが標準で搭載されているため、追加のソフトウェアなしでgzファイルの圧縮・展開が可能である。Windows環境においても、WSL (Windows Subsystem for Linux) を利用すればLinuxコマンドとして操作できるほか、7-ZipやWinRARといったサードパーティの圧縮・解凍ソフトウェアがgz形式に対応しており、GUI操作で簡単に扱うことができる。

gz形式の圧縮率は、元のデータの特性に大きく依存する。テキストファイルやソースコードのように繰り返しパターンが多いデータは高い圧縮率が得られるが、すでにJPEGやMP3のように独自の圧縮アルゴリズムが適用されているファイルや、ランダムなデータは、ほとんど圧縮できないか、場合によってはファイルサイズが増加することもある。

他の圧縮形式と比較すると、zip形式はgz形式と異なり、複数のファイルやディレクトリを一つのアーカイブにまとめて圧縮する機能を持つ。このため、ディレクトリ構造を保持したまま配布したい場合に、単体のgzファイルよりもzipファイルが選ばれることがある。また、bzip2やxzといった圧縮形式は、gzipよりも高い圧縮率を実現できるが、その分圧縮・展開にかかる時間やシステムリソースが増える傾向にある。用途に応じて、圧縮率と速度のバランスを考慮して適切な形式が選択される。例えば、ウェブコンテンツの即時転送にはgzipが選ばれることが多い一方、長期保存するアーカイブにはbzip2やxzが用いられることもある。

gzファイルは、ファイルの整合性を検証するためのチェックサム情報を含んでいる。これにより、ファイルが転送中に破損していないか、あるいは改ざんされていないかを確認できる。しかし、一部のデータが破損すると、ファイル全体が展開できなくなる可能性があるため、データの取り扱いには注意が必要である。また、インターネット上からダウンロードしたgzファイルを開く際は、それが信頼できる提供元からのものであるかを確認するなど、セキュリティ上の配慮も重要となる。悪意のあるコードが圧縮されている可能性もゼロではないため、不審なファイルは開かないようにする。

関連コンテンツ