動作確認環境
本記事のコマンドは Ubuntu 24.04 LTS(Docker公式イメージ ubuntu:24.04)で実際に実行して確認しています。Ubuntu 22.04 でも基本的な使い方は同じですが、パッケージバージョンが異なります。
Ubuntuでファイルをまとめて圧縮したり、受け取った .zip や .tar.gz を解凍したりする場面は日常的にあります。結論から言うと、zip / unzip コマンドはデフォルトでインストールされておらず、apt install が必要です。tar コマンドはあらかじめ入っています。
本記事では実際に Ubuntu 24.04 で動かした実行結果とともに、zip・tar.gz それぞれの圧縮・解凍コマンドを解説します。
この記事のポイント
zip/unzipは Ubuntu 24.04 にデフォルトで入っていない(apt install zip unzipが必要)- zip 圧縮は
zip -r archive.zip ディレクトリ名/、解凍はunzip archive.zip - tar.gz 圧縮は
tar -czf archive.tar.gz ディレクトリ名/、解凍はtar -xzf archive.tar.gz - tar.gz は zip より圧縮率が高い傾向がある(実測で同ファイルを zip:734バイト vs tar.gz:269バイト)
- Ubuntu 24.04 の zip パッケージバージョン:
3.0-13ubuntu0.2(実測)
目次
- zip/unzip をインストールする
- zipで圧縮する
- zipを解凍する
- tar.gz で圧縮する
- tar.gz を解凍する
- tar.bz2 / tar.xz の圧縮・解凍
- Ubuntu 22.04 vs 24.04 バージョン比較
- よくあるエラーと解決策
- まとめ
zip/unzip をインストールする
Ubuntu 24.04 LTS では zip と unzip はデフォルトでインストールされていません。まず apt install でインストールしてから使います。
Hit:1 http://archive.ubuntu.com/ubuntu noble InRelease
Reading package lists… Done
$ sudo apt install -y zip unzip
The following NEW packages will be installed:
unzip zip
After this operation, 1048 kB of additional disk space will be used.
Setting up unzip (6.0-28ubuntu4.1) …
Setting up zip (3.0-13ubuntu0.2) …
インストールが完了したら、バージョンを確認してみましょう。
Copyright (c) 1990-2008 Info-ZIP – Type ‘zip “-L”‘ for software license.
This is Zip 3.0 (July 5th 2008), by Info-ZIP.
$ unzip -v 2>&1 | head -1
UnZip 6.00 of 20 April 2009, by Debian.

tar コマンドは Ubuntu 24.04 に最初から入っています。
tar (GNU tar) 1.35
$ gzip –version | head -1
gzip 1.12
zipで圧縮する
手順1:単一ファイルを圧縮する
単一のファイルを zip に圧縮するには以下のコマンドを使います。
adding: hello.txt (stored 0%)
手順2:ディレクトリごと圧縮する(-r オプション)
ディレクトリをまるごと圧縮する場合は -r(recursive)オプションが必要です。-r を付けないとディレクトリの中身が含まれません。
adding: testdir/ (stored 0%)
adding: testdir/hello.txt (stored 0%)
adding: testdir/version.txt (stored 0%)
adding: testdir/readme.txt (stored 0%)
$ ls -lh archive.zip
-rw-r–r– 1 user user 734 Jun 13 09:29 archive.zip
注意:-r を忘れた場合
zip archive.zip testdir のように -r なしでディレクトリを指定すると、「zip warning: name not matched」と表示されるか、空のエントリが作られるだけです。ディレクトリを圧縮するときは必ず -r を付けてください。
手順3:zip の中身を確認する
zip ファイルを解凍せずに中身を確認するには unzip -l を使います。
Archive: archive.zip
Length Date Time Name
——— ———- —– —-
0 2026-06-13 09:29 testdir/
14 2026-06-13 09:29 testdir/hello.txt
17 2026-06-13 09:29 testdir/version.txt
45 2026-06-13 09:29 testdir/readme.txt
——— ——-
76 4 files
zipを解凍する
手順1:カレントディレクトリに解凍する
Archive: archive.zip
creating: testdir/
extracting: testdir/hello.txt
extracting: testdir/version.txt
extracting: testdir/readme.txt
手順2:指定ディレクトリに解凍する(-d オプション)
解凍先のディレクトリを指定するには -d オプションを使います。既存のファイルを上書きしたい場合は -o オプションを追加します。
Archive: archive.zip
creating: /tmp/extracted/testdir/
extracting: /tmp/extracted/testdir/hello.txt
extracting: /tmp/extracted/testdir/version.txt
extracting: /tmp/extracted/testdir/readme.txt
tar.gz で圧縮する
tar コマンドは Ubuntu 24.04 に最初から入っているので、インストール不要です。.tar.gz 形式は Linux サーバーでの標準的な圧縮形式で、Windows の zip よりも圧縮率が高くなりやすいです。
手順1:ディレクトリを tar.gz に圧縮する
-czf オプションを使います。c(create)・z(gzip)・f(filename)の頭文字です。
$ ls -lh archive.tar.gz
-rw-r–r– 1 user user 269 Jun 13 09:29 archive.tar.gz
同じ内容を zip で圧縮すると 734バイトでしたが、tar.gz では 269バイトになりました(Ubuntu 24.04 で実測)。これは tar.gz の gzip 圧縮アルゴリズムが zip(deflate)より効率よく圧縮できる場合があるためです。
手順2:tar.gz の中身を確認する(解凍せずに)
testdir/
testdir/hello.txt
testdir/version.txt
testdir/readme.txt

tar.gz を解凍する
手順1:カレントディレクトリに解凍する
-xzf オプションを使います。x(extract)・z(gzip)・f(filename)の頭文字です。
$ ls testdir/
hello.txt readme.txt version.txt
手順2:指定ディレクトリに解凍する(-C オプション)
解凍先を指定するには -C(大文字)オプションを使います。解凍先ディレクトリは事前に作成しておく必要があります。
$ tar -xzf archive.tar.gz -C /tmp/extracted_tar/
$ ls /tmp/extracted_tar/testdir/
hello.txt readme.txt version.txt
tar コマンドのオプション早見表
-c:アーカイブを作成(create)-x:アーカイブを展開(extract)-t:中身を一覧表示(list)-z:gzip 形式(.tar.gz / .tgz)-j:bzip2 形式(.tar.bz2)-J(大文字):xz 形式(.tar.xz)-f:ファイル名を指定(filename)-C(大文字):解凍先ディレクトリを指定-v:詳細表示(verbose)
tar.bz2 / tar.xz の圧縮・解凍
Ubuntu 24.04 では bzip2 と xz-utils はデフォルトでインストールされていないため、使いたい場合は先にインストールが必要です。
Setting up bzip2 …
Setting up xz-utils …
$ tar -cjf archive.tar.bz2 testdir/
# bzip2 圧縮(-j オプション)
$ tar -cJf archive.tar.xz testdir/
# xz 圧縮(-J オプション・大文字)
$ tar -xjf archive.tar.bz2 -C /tmp/extracted_bz2/
$ tar -xJf archive.tar.xz -C /tmp/extracted_xz/
Ubuntu 22.04 vs 24.04 バージョン比較
Ubuntu 22.04 と 24.04 で zip/tar 関連パッケージのバージョンを実際に Docker コンテナで確認しました。

| パッケージ | Ubuntu 22.04 LTS | Ubuntu 24.04 LTS |
|---|---|---|
zip |
3.0-12build2 | 3.0-13ubuntu0.2 |
unzip |
6.0-26ubuntu3.2 | 6.0-28ubuntu4.1 |
tar |
GNU tar 1.34 | GNU tar 1.35 |
gzip |
1.10 | 1.12 |
| Zip コマンドバージョン | Zip 3.0 | Zip 3.0(同じ) |
| UnZip コマンドバージョン | UnZip 6.00 | UnZip 6.00(同じ) |
zip/unzip の実際のコマンドバージョン(Zip 3.0 / UnZip 6.00)は 22.04 と 24.04 で変わっていませんが、Ubuntu パッケージのビルド番号やセキュリティパッチは更新されています。コマンドの使い方は両バージョンで同じです。
よくあるエラーと解決策
①「unzip: command not found」と表示される
Ubuntu 24.04 に unzip はデフォルトでインストールされていません。
Command ‘unzip’ not found, but can be installed with:
sudo apt install unzip
$ sudo apt install -y unzip
Setting up unzip (6.0-28ubuntu4.1) …
②「cannot find or open nonexistent.zip」と表示される
存在しないファイルを解凍しようとすると以下のエラーが出ます。ファイルパスやファイル名が正しいか確認してください。
Archive: nonexistent.zip
End-of-central-directory signature not found. Either this file is not
a zipfile, or it constitutes one disk of a multi-part archive.
③「tar: nonexistent.tar.gz: Cannot open」と表示される
tar: nonexistent.tar.gz: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
④ zip でディレクトリを圧縮したのにファイルが入っていない
-r オプションを忘れている可能性があります。ディレクトリを圧縮するときは必ず zip -r を使ってください。
zip warning: name not matched: testdir
# -r なしではディレクトリの中身が入らない
$ zip -r archive.zip testdir/
adding: testdir/ (stored 0%)
adding: testdir/hello.txt (stored 0%)
# -r を付けることで中身が含まれる
まとめ
Ubuntu でよく使う圧縮・解凍コマンドをまとめると以下の通りです(ubuntu:24.04 で実際に確認)。
| 操作 | 形式 | コマンド |
|---|---|---|
| 圧縮 | .zip | zip -r archive.zip ディレクトリ/ |
| 解凍 | .zip | unzip archive.zip -d 出力先/ |
| 中身確認 | .zip | unzip -l archive.zip |
| 圧縮 | .tar.gz | tar -czf archive.tar.gz ディレクトリ/ |
| 解凍 | .tar.gz | tar -xzf archive.tar.gz -C 出力先/ |
| 中身確認 | .tar.gz | tar -tzf archive.tar.gz |
| 圧縮 | .tar.bz2 | tar -cjf archive.tar.bz2 ディレクトリ/ |
| 解凍 | .tar.bz2 | tar -xjf archive.tar.bz2 -C 出力先/ |
zip/unzipは Ubuntu 24.04 にデフォルトで入っていない。sudo apt install zip unzipでインストールする- ディレクトリを zip 圧縮するときは
-rオプションが必須 - tar.gz の解凍先を指定するには
-C(大文字)オプションを使う - Ubuntu 24.04 実測: zip(3.0-13ubuntu0.2)、unzip(6.0-28ubuntu4.1)、tar(GNU 1.35)
本格的に Linux サーバーを運用するなら、次のVPS比較記事も参考にしてみてください。



コメント