1. Ubuntuで圧縮・解凍する基本知識
Ubuntuで「圧縮」操作を行う目的は主に以下の3つです。
- ファイルサイズを小さくして保存容量を節約する
- 複数ファイルを1つにまとめて送信・共有する
- バックアップやアーカイブ(保管用まとめ)を作成する
Ubuntuではコマンドライン(Terminal)での操作が基本です。GUI(ファイルマネージャ)でも可能ですが、実務やサーバー環境ではコマンド操作が標準になります。
まず理解すべき重要ポイントは「圧縮」と「アーカイブ」は別の概念であることです。
1.1 圧縮とアーカイブの違い
初心者が最も混乱しやすい点がここです。
- 圧縮(Compression)
→ データの容量を小さくする処理
例:gzip、bzip2、xz - アーカイブ(Archive)
→ 複数ファイルやフォルダを1つにまとめる処理
例:tar
重要な事実
tar コマンドは「圧縮」ではありません。
正確には「まとめるだけ」のコマンドです。
圧縮を同時に行う場合は、gzipやxzと組み合わせます。
例:
tar -czvf archive.tar.gz folder/上記の意味:
c= 作成(create)z= gzip圧縮v= 処理内容表示(verbose)f= ファイル名指定
1.2 Ubuntuでよく使われる圧縮形式
Ubuntuで一般的に使用される形式は次の通りです。
選び方の基準
- Windowsとやり取りする → zip
- Linux内で完結する → tar.gz
- サイズ最優先 → tar.xz
1.3 圧縮前に確認すべき基本コマンド
現在のディレクトリを確認:
pwdファイル一覧を確認:
ls -l容量を確認:
du -sh folder/つまずきポイント
- 現在のディレクトリを確認せずに実行し、意図しない場所にファイルが作成される
- 相対パス(例:
../folder)を誤る - 圧縮前の容量確認を怠り、ディスク容量不足になる
1.4 よくある誤解と注意点
1. 画像や動画はあまり圧縮できない
JPEGやMP4は既に圧縮済み形式のため、容量はほとんど減りません。
2. tar単体では容量は減らない
以下は「まとめるだけ」です。
tar -cvf archive.tar folder/サイズはほぼ変わりません。
3. 大容量ファイルはCPU負荷が上がる
特に xz 使用時はCPU使用率が高くなります。
4. 権限エラーに注意
システムディレクトリを扱う場合は sudo が必要です。
2. Ubuntuでzip形式に圧縮・解凍する方法
zip形式は、UbuntuとWindows間でファイルをやり取りする場合に最も互換性が高い形式です。
「ubuntu 圧縮」で検索するユーザーの多くは、まずzip形式を求めています。
Ubuntuでは zip と unzip コマンドを使用します。
最初にインストール状況を確認します。
2.1 zipコマンドのインストール確認
以下で確認できます。
zip -vエラーが出る場合はインストールします。
sudo apt update
sudo apt install zip unzipよくある失敗
- unzipが未インストールで解凍できない
- sudoを付け忘れてPermission deniedになる
2.2 ファイルをzipで圧縮する方法
単一ファイルの圧縮:
zip sample.zip file.txt実行結果:
sample.zipが作成される- 元ファイルは削除されない
複数ファイルをまとめて圧縮
zip sample.zip file1.txt file2.txt2.3 フォルダを圧縮する方法(重要)
フォルダを圧縮する場合は -r オプション(再帰処理)が必須です。
zip -r sample.zip folder/-r を付けないとフォルダ内のファイルは圧縮されません。
つまずきポイント
-rを付け忘れる- 相対パスを間違える
- 出力ファイル名を先に書く順番を間違える
正しい順番:
zip -r 出力名.zip 対象フォルダ2.4 zipファイルを解凍する方法
基本コマンド:
unzip sample.zip指定フォルダに解凍する場合:
unzip sample.zip -d extracted_folder注意点
- 解凍先が既に存在すると上書き確認が表示される
- 同名ファイルがあると上書きされる可能性がある
- パスに空白がある場合は引用符で囲む
例:
unzip "sample file.zip"2.5 パスワード付きzipの作成
セキュリティ目的で暗号化できます。
zip -e secure.zip file.txtパスワード入力を求められます。
注意点
- zipの暗号方式は強固ではない(高度なセキュリティ用途には不向き)
- パスワード紛失=復元困難
2.6 容量確認と圧縮率の確認
zipファイルの情報表示:
unzip -l sample.zip元容量との比較:
ls -lh圧縮率が低い理由
- 画像・動画は既に圧縮済み
- テキストやログは圧縮率が高い
3. tar.gz(tgz)で圧縮する方法(Linux標準)
Linux環境で最も一般的に使用される形式が tar.gz です。
Ubuntuでソースコード配布やバックアップ用途に広く使われています。
tar.gz は以下の2段階処理です。
- tarでファイルをまとめる(アーカイブ)
- gzipで圧縮する
この仕組みを理解しておくと応用が容易になります。
3.1 tar.gzで圧縮する基本コマンド
フォルダを圧縮する例:
tar -czvf archive.tar.gz folder/各オプションの意味:
c= create(作成)z= gzip圧縮v= verbose(処理内容表示)f= file(出力ファイル指定)
単一ファイルの場合
tar -czvf archive.tar.gz file.txt複数ファイルをまとめる場合
tar -czvf archive.tar.gz file1.txt file2.txt3.2 tar.gzを解凍する方法
基本コマンド:
tar -xzvf archive.tar.gzオプション解説:
x= extract(展開)z= gzip解凍v= 展開内容表示f= ファイル指定
指定ディレクトリへ展開
tar -xzvf archive.tar.gz -C target_folder/-C は展開先ディレクトリ指定です。
3.3 tarコマンド使用時の重要注意点
1. 展開先のパス構造に注意
圧縮時のディレクトリ構造ごと展開されます。
例:
tar -czvf archive.tar.gz folder/展開すると:
folder/
└─ 中身「中身だけを展開したい」場合は作成時にパスを調整する必要があります。
2. 上書き事故に注意
既存ファイルがある場合、上書きされる可能性があります。
事前に確認する場合:
tar -tzvf archive.tar.gz-t は一覧表示です。
3. ディスク容量不足
圧縮中は一時的に容量を使用します。
事前確認:
df -h3.4 gzip単体で圧縮する場合
単一ファイルのみを圧縮:
gzip file.txt結果:
file.txt.gz解凍:
gunzip file.txt.gz注意
- gzipは元ファイルを削除する(圧縮後に置き換える)
- 複数ファイルまとめには不向き
3.5 よくある失敗
- オプション順を間違える
fの後にファイル名を書き忘れる-Cの位置を誤る- tar単体で容量が減らないと誤解する
4. 高圧縮形式(bz2 / xz)の使い分け
容量をできるだけ小さくしたい場合は、gzipよりも高圧縮な bzip2(bz2) や xz を使用します。
ただし、圧縮率が高いほどCPU負荷が増加し、処理時間が長くなる傾向があります。
基本的な考え方は以下の通りです。
- 速度重視 → gzip
- 圧縮率重視 → xz
- 中間的 → bzip2
4.1 tar.bz2 の作成・解凍
圧縮する方法
tar -cjvf archive.tar.bz2 folder/オプション解説:
c= 作成j= bzip2圧縮v= 処理表示f= 出力指定
解凍する方法
tar -xjvf archive.tar.bz24.2 tar.xz の作成・解凍
xzは現在、Linuxで最も圧縮率が高い形式の一つです。
圧縮する方法
tar -cJvf archive.tar.xz folder/※ J は大文字です(重要)。
解凍する方法
tar -xJvf archive.tar.xz4.3 圧縮率と処理時間の違い
一般的な傾向(環境により異なる):
- gzip → 速いが圧縮率は標準
- bzip2 → gzipより高圧縮、やや遅い
- xz → 非常に高圧縮、最も遅い
CPU負荷確認
top大容量ファイルをxzで圧縮するとCPU使用率が高くなるのは正常です。

4.4 実務での選び方
バックアップ用途
→ tar.xz(容量削減重視)
サーバーログ保存
→ tar.gz(バランス重視)
一時的な転送
→ tar.gz または zip
4.5 よくある失敗と注意点
Jを小文字で書いてエラーになる- 古い環境でxzが未インストール
- CPU負荷でサーバーが重くなる
- 圧縮中に容量不足になる
xzが未インストールの場合:
sudo apt install xz-utils5. GUI(ファイルマネージャ)で圧縮する方法
コマンド操作に不慣れな場合は、Ubuntuのファイルマネージャ(通常は「Files」=Nautilus)から圧縮できます。
デスクトップ環境では最も簡単な方法です。
5.1 右クリックから圧縮する手順
手順
- 圧縮したいファイルまたはフォルダを選択
- 右クリック
- 「圧縮(Compress)」を選択
- 形式を選択
- .zip
- .tar.xz
- .7z(環境により表示)
- 作成をクリック
圧縮ファイルが同じディレクトリに作成されます。
5.2 解凍する方法
手順
- 圧縮ファイルを右クリック
- 「ここに展開」または「別の場所に展開」
- 展開完了
5.3 GUIが使えない場合の確認
最小インストール環境やサーバー版UbuntuではGUIは利用できません。
その場合はコマンド操作が必要です。
デスクトップ版確認:
echo $XDG_CURRENT_DESKTOP何も表示されない場合はGUI環境が無い可能性があります。
5.4 GUI利用時の注意点
1. 大量ファイルは処理が遅い
進捗表示が分かりにくい場合があります。
2. 詳細な圧縮レベル指定ができない
gzipレベル指定などはGUIでは不可。
3. CPU使用率が見えにくい
処理中にPCが重くなっても理由が分かりにくい。
4. サーバー用途には不向き
SSH接続環境では利用不可。
5.5 よくある失敗
- 圧縮形式の違いを理解せず選択する
- 展開先を確認せずファイルが見つからなくなる
- 既存ファイルを上書きしてしまう
6. 実務で役立つ圧縮の応用テクニック
ここでは、単純な圧縮・解凍だけでなく、実務やサーバー運用で頻出するテクニックを解説します。
ログ除外、特定拡張子のみ圧縮、パスワード付きzipなど、実用性の高い操作です。
6.1 特定の拡張子のみを圧縮する
例:ログファイルのみを圧縮
tar -czvf logs.tar.gz *.log注意点
*(ワイルドカード)はシェル展開(自動展開)される- カレントディレクトリ内のみ対象
- サブフォルダは対象外
サブフォルダも含める場合:
find . -name "*.log" -print0 | tar --null -czvf logs.tar.gz --files-from=-6.2 特定ファイルを除外して圧縮する
例:.logファイルを除外
tar --exclude="*.log" -czvf archive.tar.gz folder/複数除外:
tar --exclude="*.log" --exclude="*.tmp" -czvf archive.tar.gz folder/よくある失敗
- 引用符を付けずにワイルドカードが展開される
- 除外パスを誤る
6.3 圧縮レベルを指定する(gzip)
gzipは圧縮レベルを指定可能です(1〜9)。
gzip -9 file.txt- 1 = 高速・低圧縮
- 9 = 低速・高圧縮
tarで指定する場合:
tar -czvf archive.tar.gz folder/ --gzip -9※環境により指定方法が異なる場合あり
6.4 パスワード付きzipの作成
zip -e secure.zip file.txt強制的に暗号化する場合:
zip -P password secure.zip file.txt注意
-Pは履歴に残るため非推奨- zip暗号は強固ではない(高度セキュリティ用途には不向き)
6.5 分割圧縮(大容量ファイル用)
大容量を分割する場合:
zip -r -s 100m split.zip folder/100MB単位で分割されます。
注意点
- 解凍時はすべての分割ファイルが必要
- 途中欠損すると復元不可
6.6 圧縮前後の容量比較
圧縮前:
du -sh folder/圧縮後:
ls -lh archive.tar.gz圧縮率が低い場合の原因:
- 画像・動画など既に圧縮済み
- 暗号化データは圧縮率が低い
7. 圧縮時によくあるエラーと対処法
Ubuntuで圧縮・解凍を行う際、初心者が頻繁に遭遇するエラーがあります。
ここでは代表的なエラーと、その具体的な解決方法を解説します。
7.1 command not found エラー
例:
zip: command not found原因
対象コマンドがインストールされていない。
解決方法
sudo apt update
sudo apt install zip unziptar系の場合:
sudo apt install xz-utils7.2 Permission denied(権限エラー)
例:
tar: folder/file.txt: Cannot open: Permission denied原因
ファイルまたはディレクトリへのアクセス権限不足。
解決方法
所有者確認:
ls -lsudo使用:
sudo tar -czvf archive.tar.gz folder/注意
むやみにsudoを多用するとセキュリティリスクになります。
7.3 No space left on device(容量不足)
例:
No space left on device原因
ディスク容量不足。
確認方法
df -h不要ファイル削除:
sudo apt cleanログ確認:
du -sh *7.4 解凍時の文字化け
zipファイルをWindowsから受け取った場合に発生することがあります。
原因
文字コードの違い(UTF-8とShift-JISなど)。
対処例
unzip -O cp932 sample.zip※環境により異なる。
7.5 上書き事故
解凍時に既存ファイルが上書きされることがあります。
事前確認:
tar -tzvf archive.tar.gzzipの場合:
unzip -l sample.zip7.6 CPU負荷が高い
xz圧縮時にCPU使用率が高くなるのは正常です。
確認:
top必要なら圧縮レベルを下げる、gzipを使用するなど調整します。
8. Ubuntu圧縮コマンドの使い分けまとめ(早見表)
ここまで解説した内容を、用途別に整理します。
「ubuntu 圧縮」で検索するユーザーが最短で結論に到達できるよう、実用ベースでまとめます。
8.1 用途別おすすめ形式
| 用途 | 推奨形式 | 理由 |
|---|---|---|
| Windowsと共有 | zip | 互換性が高い |
| Linux内で標準利用 | tar.gz | バランスが良い |
| 容量最優先 | tar.xz | 高圧縮 |
| バックアップ保存 | tar.gz / tar.xz | 安定性重視 |
| 一時的な転送 | tar.gz | 速度重視 |
8.2 圧縮形式の比較(速度と圧縮率)
| 形式 | 圧縮率 | 速度 | CPU負荷 |
|---|---|---|---|
| zip | 普通 | 速い | 低い |
| tar.gz | 普通 | 速い | 低〜中 |
| tar.bz2 | 高い | 遅い | 中 |
| tar.xz | 非常に高い | 非常に遅い | 高い |
※圧縮率や速度はデータ内容・環境により異なります。
8.3 最低限覚えるべきコマンド
zip圧縮
zip -r archive.zip folder/tar.gz圧縮
tar -czvf archive.tar.gz folder/tar.gz解凍
tar -xzvf archive.tar.gz8.4 初心者が迷わない結論
- 迷ったら tar.gz を使う
- Windows共有なら zip
- 容量を極限まで減らすなら tar.xz
まずは tar -czvf と tar -xzvf を覚えることが最優先です。
8.5 よくある選択ミス
- tar単体で圧縮できると誤解する
- xzを常に選び、処理が遅くなる
- GUIとCLIの違いを理解していない
- 圧縮前に容量確認をしない


