TAR.GZファイルをオンラインで展開
TAR.GZまたはTGZアーカイブをアップロードすると、その内容をすぐに展開できます。本ツールはオンラインで展開と解凍を行い、展開したファイルを、特別なソフトなしにどのOSでも使えるダウンロード可能なZIPアーカイブにまとめます。
Linuxのアーカイブを受け取ったものの、追加ソフトをインストールしたくないWindowsユーザーに最適です。アップロードして展開し、ダウンロードするだけで、コマンドラインは不要です。
TAR.GZ形式について
TAR.GZはTARによるアーカイブ化とGZIP圧縮を組み合わせた形式です。TAR(Tape Archive)は、Unixのファイル権限、所有者情報、タイムスタンプを保持したまま複数のファイルを1つのアーカイブにまとめます。その後GZIPが、DEFLATEアルゴリズムを使ってこの束を効率よく圧縮します。
TAR.GZはLinuxやUnixシステムの標準的なアーカイブ形式です。オープンソースソフトウェア、Linuxカーネルのリリース、サーバー設定のバックアップなどでよく使われます。
よくある用途
- オープンソースのダウンロード — TAR.GZ形式で配布されているソフトウェアを展開
- サーバーバックアップ — Linuxサーバーのバックアップからファイルを取り出す
- ソースコードパッケージ — レビューやコンパイルのためにソースコードを展開
- クロスプラットフォームでの共有 — Linuxのアーカイブを Windows/Macで開く
オンラインで展開する理由
WindowsはTAR.GZファイルに標準対応していません。7-Zipのようなツールでも扱えますが、本ツールならソフトのインストールなしに即座にアクセスできます。得られるZIPファイルは、Windows、Mac、モバイル端末など、どのシステムでも開けます。
GZIP圧縮の技術
GZIPはDEFLATE圧縮アルゴリズムを使用しており、ソースコードや設定ファイルのようなテキストベースのコンテンツで60〜90%の圧縮率を実現します。最も強力な圧縮ではありませんが、GZIPは圧縮率と速度のバランスが良く、頻繁にアクセスされるファイルやWebサーバーにとって重要な特性です。
TARとGZIPの組み合わせは一体型のアーカイブを作り出し、TARファイル全体が1つの単位として圧縮されます。これによりファイルごとの圧縮より高い圧縮率を実現できますが、どのファイルにアクセスするにもアーカイブ全体を展開する必要があります。ランダムアクセスが重要なアーカイブには、ZIPの方が適している場合があります。
ソフトウェア開発におけるTAR.GZ
オープンソースプロジェクトは、ソースコードをTAR.GZアーカイブとして配布することがよくあります。GitHubのリリースのtarball、PyPIパッケージ、npmのtarballはすべてこの形式を使用しています。オープンソースプロジェクトに貢献する際は、ソースからソフトウェアをビルドするためにTAR.GZアーカイブを展開する場面が頻繁にあります。
DockerイメージやコンテナのレイヤーもTAR.GZを内部で使用しています。TAR.GZの構造を理解しておくと、コンテナの問題をデバッグしたり、カスタムイメージを作成したり、分析のためにコンテナレイヤーからファイルを取り出したりする際に役立ちます。
TAR.GZファイルの構造
TAR.GZファイルは、基本的にはGZIP圧縮で包まれたTARアーカイブです。TAR層は、ディレクトリ構成、ファイル名(Unicode文字を含む)、権限、タイムスタンプ、シンボリックリンクを保持したままファイルをまとめます。外側のGZIP層が、この全体を1つのストリームとして圧縮します。
この2層構造のため、ファイルを個別に圧縮するZIPとは異なり、個々のファイルを取り出すにもアーカイブ全体を処理する必要があります。特定のファイルが必要で頻繁にアクセスするアーカイブにはZIPの方が効率的な場合があります。完全な展開やバックアップの用途では、TAR.GZの一体型圧縮がより高い圧縮率を実現します。
クロスプラットフォームでの考慮点
Linuxで作成されたTAR.GZアーカイブをWindowsで展開する際は、ファイル名の違いに注意してください。Linuxでは、Windowsでは使えない文字(コロンなど一部の特殊文字)をファイル名に使えます。Windowsの命名規則に合わせるため、展開時に一部のファイルの名前が変更されることがあります。
大文字と小文字の扱いも異なります。Linuxは「File.txt」と「file.txt」を別のファイルとして扱いますが、Windowsは同じファイルとみなします。大文字小文字の違いだけで区別されるファイルを含むアーカイブは、Windows上では競合し、一方が他方を上書きしてしまう可能性があります。本ツールは、ZIPへの変換時にこうした競合を自動的に処理します。
関連ツール
- TAR.BZ2を展開 — BZIP2圧縮のアーカイブを展開
- TAR.XZを展開 — XZ圧縮のアーカイブを展開
- TAR.GZからZIPへ — ZIP形式に変換