このページで解説している内容は、以下の YouTube 動画の解説で見ることができます。
新Linuxコマンド演習10

新Linuxコマンド演習10 概要
「新Linuxコマンド演習10」では、tarコマンドを使用して、ファイルやディレクトリをまとめて圧縮アーカイブ化(*.tar.gz形式)し、さらにそのアーカイブを展開(解凍)する方法を学びます。
これまでに学習した gzipコマンド と tarコマンド の知識を組み合わせる内容ですが、tarコマンドはオプションを指定することで、単独で圧縮と展開の両方が可能です。
実際のシステム運用では、バックアップ作成やファイル転送に広く利用されます。

tarコマンドの主なオプション一覧
| オプション | 意味 | 説明 |
|---|---|---|
| c | create | 新しいアーカイブを作成する。 |
| x | extract | アーカイブを展開する。 |
| v | verbose | 処理の詳細を表示する。 |
| f | file | アーカイブファイル名を指定する。 |
| z | gzip | gzip圧縮を利用してアーカイブを圧縮または解凍する。 |
| t | list | アーカイブ内の内容を一覧表示する。 |
この表の通り、tar は複数のオプションを組み合わせて使うことが基本です。
例えば、czvf は「作成+ gzip 圧縮+詳細表示+ファイル指定」を同時に行うオプションの組み合わせです。
演習問題+模範解答例
演習01:ディレクトリとファイルの作成
問題
バックアップ対象となる archive ディレクトリを作成し、その中に複数のファイルをコピーしてください。
模範解答例
[suzuki@AlmaLinux ~]$ mkdir archive
[suzuki@AlmaLinux ~]$ cp /etc/hosts /etc/services /etc/fstab archive
[suzuki@AlmaLinux ~]$ ls
Desktop Downloads Pictures Templates archive
Documents Music Public Videos解説
cp コマンドを使用して、システム設定ファイルを archive ディレクトリにコピーしました。
これらのファイルを後でまとめてアーカイブ・圧縮します。
演習02:圧縮アーカイブを作成する
問題
archive ディレクトリを tarコマンドを使って圧縮アーカイブ(gzip形式)にまとめてください。
模範解答例
[suzuki@AlmaLinux ~]$ tar czvf archive.tar.gz archive
archive/
archive/hosts
archive/services
archive/fstab
[suzuki@AlmaLinux ~]$ ls
Desktop Downloads Pictures Templates archive
Documents Music Public Videos archive.tar.gz解説
tarコマンドで圧縮アーカイブを作成しました。
オプションの意味は以下の通りです。
| オプション | 意味 | 説明 |
|---|---|---|
| c | create | 新しいアーカイブを作成 |
| z | gzip | gzip圧縮を使用 |
| v | verbose | 詳細表示 |
| f | file | アーカイブ名を指定 (archive.tar.gz) |
出力結果から、archive ディレクトリが1つの圧縮ファイルにまとめられていることがわかります。
演習03:元ディレクトリの削除
問題
作成した archive ディレクトリを削除し、圧縮アーカイブだけを残してください。
模範解答例
[suzuki@AlmaLinux ~]$ rm -r archive
[suzuki@AlmaLinux ~]$ ls
Desktop Downloads Pictures Templates archive.tar.gz
Documents Music Public Videos解説
rm -r オプションでディレクトリを再帰的に削除します。
圧縮アーカイブ archive.tar.gz だけが残りました。
演習04:アーカイブの展開(復元)
問題
削除した archive ディレクトリを、archive.tar.gz から展開して復元してください。
模範解答例
[suzuki@AlmaLinux ~]$ tar xzvf archive.tar.gz
archive/
archive/hosts
archive/services
archive/fstab
[suzuki@AlmaLinux ~]$ ls
Desktop Downloads Pictures Templates archive
Documents Music Public Videos archive.tar.gz解説
tarコマンドで圧縮アーカイブを展開しました。
オプションの意味は以下の通りです。
| オプション | 意味 | 説明 |
|---|---|---|
| x | extract | アーカイブを展開 |
| z | gzip | gzip圧縮を利用 |
| v | verbose | 詳細表示 |
| f | file | アーカイブファイルを指定 |
出力結果から、archive ディレクトリが元の構成で復元されています。
演習終了時の作業
問題
この演習で作成したファイルを削除し、環境を元に戻してください。
模範解答例
[suzuki@AlmaLinux ~]$ rm -r archive
[suzuki@AlmaLinux ~]$ rm archive.tar.gz
[suzuki@AlmaLinux ~]$ ls
Desktop Documents Downloads Music Pictures Public Templates Videos解説
演習終了時には作業用ファイルを削除し、クリーンな状態に戻します。
tarによる圧縮・展開の流れ
| 操作 | コマンド例 | 処理内容 |
|---|---|---|
| 圧縮アーカイブの作成 | tar czvf archive.tar.gz archive | ディレクトリをgzip圧縮付きでまとめる。 |
| アーカイブの展開 | tar xzvf archive.tar.gz | 圧縮ファイルを解凍・展開する。 |
| アーカイブ内容の確認 | tar tzvf archive.tar.gz | 圧縮ファイル内の構成を一覧表示 |
この表により、tarコマンド1つで圧縮・解凍・確認の全操作を実行できることがわかります。
まとめ
「新Linuxコマンド演習10」では、tarコマンドを使って圧縮アーカイブの作成と展開を行いました。
gzipやgunzipコマンドを個別に使わなくても、tarコマンドのオプションを組み合わせることで、一括で圧縮と展開が可能になります。
tarコマンドはLinuxのバックアップ・配布・ログ保存など、あらゆる場面で使用される基本中の基本コマンドです。
