ファイルやフォルダの圧縮を使ったことがあるか。パソコンではあまり使わないファイルを圧縮してストレージの容量を空けることがあるよな。この圧縮をした時にできるのがzipファイルです。パソコンならWindowsでもMacでも同じような操作で同じファイルができる。ですが、Linuxではzipの代わりにgzipを使うぞ。gが1文字増えただけですが、zipとはだいぶ違うらしいのです。その違いや圧縮ツールの歴史まで、Linux経験もあるプログラマでもあるライターのwoinaryと一緒に解説していきます。

ライター/woinary

某社で社内向け業務システムの開発、運用を30年近くやっていたシステム屋さん。現在はフリーランス。ガジェットやゲーム、ラノベが大好きなおっさんです。

圧縮だけ?1つにまとめる?アーカイバーとは

image by iStockphoto

パソコンのストレージに空きがなくなってきた時便利なのがファイルやフォルダの圧縮。エクスプローラーで選択して圧縮を選ぶだけなので簡単です。この時できたファイルがzipファイル。WindowsでもMacでも同じような操作でつくることができます。

このようにファイルをまとめることを「アーカイブする」、そのためのプログラムが「アーカイバー」です。Windowsなどではこのzipが一般的ですが、プログラマなどが使っているLinuxではgzipというものが一般的。Windowsではあまりなじみがないgzipとzipの違いを説明します。

zip:WinやMacでおなじみ、ファイルやフォルダを圧縮

WindowsやMacでエクスプローラーやファインダーで圧縮した時にできるのがzipファイル。元々は1989年にPKWARE社の製品、PKZIPで使われたものです。その後広く普及して、PKWARE社以外でもzipファイルが使われるようになり、WindowsやMacでも標準で扱うことができるように。

WindowsやMacでは何かをインストールしたりせずにzipファイルをつくることができます。ただ、zipファイルにパスワードをつける場合には、別のアーカイバーのインストールが必要です。

gzip:Linuxなどで使う、1ファイルだけ圧縮

一方、Linuxやその元になったUnixの世界で一般的なのがgzip。頭にgが付いただけに見えますね。ただ、個人で使うパソコン用のWindowsやMacと、会社などで複数の利用者が仕事に使うためのLinuxでは考え方が違います

その一番大きな点がgzipでは1ファイルしか圧縮できないこと。つまり、zipは圧縮もできるアーカイバーですが、gzipは圧縮しかできないのです。その代わり、圧縮できないアーカイバーと組み合わせて使います。一見、手間がかかるように思えますよね。これは、1つの便利なプログラムでさまざまな仕事をするWindowsに対して、Linuxでは簡単なことしかできないプログラムを組み合わせて使うという考え方の違いによるのです。

gがついているだけで大違い?何が違うか比べてみよう

image by iStockphoto

パソコンではファイルはよく書類に例えられます。その書類をまとめるのがフォルダです。それらの書類やフォルダを本棚やキャビネットに収納しますよね。この本棚やキャビネットのことをアーカイブ(書庫)と呼びます。パソコンの中のデジタルな書庫にしまうプログラムなのでアーカイバーです。

その中でも特に有名なのがzipとgzip。この違いを3点から説明します。

違い1.どこで使えるかの違い

まず違うのは使えるところzipはWindowsやMacでは特に何かを用意しなくてもそのままで使えます。一方、Linuxではそのままではzipは使えません。その代わりにgzipを使います

ただし、WindowsやMacでもgzipをインストールすれば使うことはできます。逆にLinuxでもzipをインストールすれば利用可能。ただ、特に何もしなくても使える方を使うことが多いわけです。また、Linuxやその元になったUnixの世界では最初に触れたようにプログラムの考え方が違う部分もあります。そのため、両者で一般的なものが違っているわけです。

違い2.ファイルのまとめる機能の有無

次に、ファイルをまとめる機能の有無が違います。zipではいくつかのファイルやフォルダをまとめることが可能。しかし、gzipでは1ファイルしか圧縮できませんファイルをまとめる機能はないわけです。

これでは不便なのでLinuxではファイルをまとめるアーカイバーが別に存在します。このアーカイバーとzipの違いは圧縮機能がないこと。つまりWindowsならzipだけでできることを、Linuxではわざわざアーカイバーとgzipの2つを使ってするわけです。一見不便ですよね。ただ、今ではzipが一般的ですが、後で説明するようにかつては多くのアーカイバーがありました。そのため、アーカイバーと圧縮を分けることで、自由に組み合わせて使う方がよいとLinuxでは考えたのです。

違い3.圧縮した後のファイルの有無

3つ目の違いはファイルを圧縮した後です。zipではファイルやフォルダを圧縮した後、そのファイルはそのまま残ってますよね。不要であれば自分で消す必要があります。一方、gzipでは圧縮したファイルはgzipがつくったファイルで置き換えてしまうのです。元のファイルを改めて消す必要はありません。

これはLinuxではアーカイブと圧縮が別々に分かれていることも関係しています。アーカイブした時にはzip同様、元のファイルは残っています。ですので、まとめたファイルがたとえ壊れてしまっても元のファイルから作り直すだけ。だから、圧縮したら元のファイルは消してしまうわけです。

\次のページで「zipやgzipだけじゃない?アーカイバーの話」を解説!/

zipやgzipだけじゃない?アーカイバーの話

image by iStockphoto

Linuxでは圧縮プログラムを使い分けできると説明しました。しかし、gzipとzipしかなく、Linuxではgzipが一般的なら使い分けの必要がなさそうです。なぜ、わざわざ分けているのか不思議ですよね。

実は、WindowsやMacでも、Linuxでも、以前はzipやgzip以外にも多くのアーカイバーや圧縮ソフトがあったのです。続いてアーカイバーの歴史や、それらの中からなぜzipが生き残ったのかを説明します。

国産アーカイバー?LHarcとLHA

今でこそWindowsやMacではzipが一般的。しかし、最初に説明したPKZIPの前にはPKARCというプログラムが有名でした。色々なアーカイバーがあったわけです。その中でも日本で有名だったのがLHarcとLHA。どちらも国産です。

LHarcが登場したのは1988年。当時はまだストレージの容量も小さく、ネットの速度も今とは比べ物にならないくらい遅い時代です。そのため、ファイルの圧縮は必須少しでも小さくできることが最重要です。そこで登場したのがLHarc。PKZIPは有料ですが、LHarcは無料のため主に日本で広く普及します。1991年には改良版のLHAが登場。一時は日本語版Windowsでも使うことが可能に。今のzipと同じかそれ以上に使われていたのです。

Linuxなどのアーカイバーと圧縮ツール

一方のLinuxやUnixではアーカイバーはtarというプログラムが一般的。これは圧縮機能はありませんが、そのためUnixが登場した頃から現在まで長い間使われています。その登場した頃に使われていた圧縮プログラムがcompressです。その後、gzipが一般的になりますが、その1番の理由は圧縮率が高いこととスピード

2000年以前、特に1990年代あたりは2000年以降と比べるとコンピューターもネットの速度も遅く、ストレージなどの容量も小さかったのです。そのため、少しでも小さくできる上に、圧縮や復元(解凍)の時間がかからないものをつくろうと、さまざまな開発者が競争。その結果、色々なアーカイバーが生まれたわけです。

なぜzipが覇権を握ったのか

世はまさにアーカイバーソフト大競争時代。その中でなぜzipが生き残ったのでしょう。大きな理由としては、WindowsやMacで標準的な機能になったから。元々のPKZIPは有料商品です。しかし、PKWARE社はzipを自由に使ってよいと決めました。そのため、PKZIP以外にもzipを扱うプログラムが登場マイクロソフトやアップルも自社製品に採用することに。もちろん、圧縮率やスピードが優れていたのですが、それだけならばもっと優れたものもありました。

しかし、多くの人に使われていて、自由に使うことができ、マイクロソフトやアップルも採用したことでzipが覇権を握ったわけです。

\次のページで「2つの世界でそれぞれ覇権を握るzipとgzip」を解説!/

2つの世界でそれぞれ覇権を握るzipとgzip

かつては少しでも小さく、少しでも早くを求めて圧縮プログラムの熾烈な競争がありました。その結果、圧縮率とスピードのバランスがよく広く使われたことで生き残ったのがgzipやzipです。WindowsやMacの標準の圧縮機能に使われるだけでなく、WordやExcelの.xlsxや.docxファイルも実はzipファイル。WordやExcelで扱うファイルをまとめて扱いやすくしているわけです。

Windows、MacとLinuxは用途や考え方が違う面も多くあります。そのため、zipとgzipがそれぞれ今後も使われ続けていくでしょう。どちらも雑多なファイルをまとめて小さくすることで扱いやすくするもの。しかし、その背景によって違いが出ているわけです。

" /> 簡単でわかりやすい!gzipとzipの違いとは?アーカイバーの歴史もプログラマーがわかりやすく解説 – Study-Z
IT・プログラミング雑学

簡単でわかりやすい!gzipとzipの違いとは?アーカイバーの歴史もプログラマーがわかりやすく解説

ファイルやフォルダの圧縮を使ったことがあるか。パソコンではあまり使わないファイルを圧縮してストレージの容量を空けることがあるよな。この圧縮をした時にできるのがzipファイルです。パソコンならWindowsでもMacでも同じような操作で同じファイルができる。ですが、Linuxではzipの代わりにgzipを使うぞ。gが1文字増えただけですが、zipとはだいぶ違うらしいのです。その違いや圧縮ツールの歴史まで、Linux経験もあるプログラマでもあるライターのwoinaryと一緒に解説していきます。

ライター/woinary

某社で社内向け業務システムの開発、運用を30年近くやっていたシステム屋さん。現在はフリーランス。ガジェットやゲーム、ラノベが大好きなおっさんです。

圧縮だけ?1つにまとめる?アーカイバーとは

image by iStockphoto

パソコンのストレージに空きがなくなってきた時便利なのがファイルやフォルダの圧縮。エクスプローラーで選択して圧縮を選ぶだけなので簡単です。この時できたファイルがzipファイル。WindowsでもMacでも同じような操作でつくることができます。

このようにファイルをまとめることを「アーカイブする」、そのためのプログラムが「アーカイバー」です。Windowsなどではこのzipが一般的ですが、プログラマなどが使っているLinuxではgzipというものが一般的。Windowsではあまりなじみがないgzipとzipの違いを説明します。

zip:WinやMacでおなじみ、ファイルやフォルダを圧縮

WindowsやMacでエクスプローラーやファインダーで圧縮した時にできるのがzipファイル。元々は1989年にPKWARE社の製品、PKZIPで使われたものです。その後広く普及して、PKWARE社以外でもzipファイルが使われるようになり、WindowsやMacでも標準で扱うことができるように。

WindowsやMacでは何かをインストールしたりせずにzipファイルをつくることができます。ただ、zipファイルにパスワードをつける場合には、別のアーカイバーのインストールが必要です。

gzip:Linuxなどで使う、1ファイルだけ圧縮

一方、Linuxやその元になったUnixの世界で一般的なのがgzip。頭にgが付いただけに見えますね。ただ、個人で使うパソコン用のWindowsやMacと、会社などで複数の利用者が仕事に使うためのLinuxでは考え方が違います

その一番大きな点がgzipでは1ファイルしか圧縮できないこと。つまり、zipは圧縮もできるアーカイバーですが、gzipは圧縮しかできないのです。その代わり、圧縮できないアーカイバーと組み合わせて使います。一見、手間がかかるように思えますよね。これは、1つの便利なプログラムでさまざまな仕事をするWindowsに対して、Linuxでは簡単なことしかできないプログラムを組み合わせて使うという考え方の違いによるのです。

gがついているだけで大違い?何が違うか比べてみよう

image by iStockphoto

パソコンではファイルはよく書類に例えられます。その書類をまとめるのがフォルダです。それらの書類やフォルダを本棚やキャビネットに収納しますよね。この本棚やキャビネットのことをアーカイブ(書庫)と呼びます。パソコンの中のデジタルな書庫にしまうプログラムなのでアーカイバーです。

その中でも特に有名なのがzipとgzip。この違いを3点から説明します。

違い1.どこで使えるかの違い

まず違うのは使えるところzipはWindowsやMacでは特に何かを用意しなくてもそのままで使えます。一方、Linuxではそのままではzipは使えません。その代わりにgzipを使います

ただし、WindowsやMacでもgzipをインストールすれば使うことはできます。逆にLinuxでもzipをインストールすれば利用可能。ただ、特に何もしなくても使える方を使うことが多いわけです。また、Linuxやその元になったUnixの世界では最初に触れたようにプログラムの考え方が違う部分もあります。そのため、両者で一般的なものが違っているわけです。

違い2.ファイルのまとめる機能の有無

次に、ファイルをまとめる機能の有無が違います。zipではいくつかのファイルやフォルダをまとめることが可能。しかし、gzipでは1ファイルしか圧縮できませんファイルをまとめる機能はないわけです。

これでは不便なのでLinuxではファイルをまとめるアーカイバーが別に存在します。このアーカイバーとzipの違いは圧縮機能がないこと。つまりWindowsならzipだけでできることを、Linuxではわざわざアーカイバーとgzipの2つを使ってするわけです。一見不便ですよね。ただ、今ではzipが一般的ですが、後で説明するようにかつては多くのアーカイバーがありました。そのため、アーカイバーと圧縮を分けることで、自由に組み合わせて使う方がよいとLinuxでは考えたのです。

違い3.圧縮した後のファイルの有無

3つ目の違いはファイルを圧縮した後です。zipではファイルやフォルダを圧縮した後、そのファイルはそのまま残ってますよね。不要であれば自分で消す必要があります。一方、gzipでは圧縮したファイルはgzipがつくったファイルで置き換えてしまうのです。元のファイルを改めて消す必要はありません。

これはLinuxではアーカイブと圧縮が別々に分かれていることも関係しています。アーカイブした時にはzip同様、元のファイルは残っています。ですので、まとめたファイルがたとえ壊れてしまっても元のファイルから作り直すだけ。だから、圧縮したら元のファイルは消してしまうわけです。

\次のページで「zipやgzipだけじゃない?アーカイバーの話」を解説!/

次のページを読む
1 2 3
Share: