新Linux入門|tarコマンドでファイルをまとめて圧縮・展開しよう

Linuxで複数のファイルやディレクトリを「まとめて管理したい」と思ったことはありませんか?
そんなときに便利なのが tarコマンド です。

 tar(Tape ARchive)は、もともと磁気テープ装置へのバックアップのために開発されたツールですが、
今ではファイルをまとめてひとつにアーカイブしたり、gzipなどで圧縮してサイズを小さくするためによく使われています。

 この記事では、AlmaLinux 9.6環境をもとに、tarコマンドを使ってファイルをまとめたり、展開したりする方法を
図と例を交えながらわかりやすく紹介します。

📦tarコマンドとは?

 tarコマンドは、複数のファイルやディレクトリを1つのアーカイブファイルにまとめるためのコマンドです。
また、そのアーカイブを展開(元に戻す)こともできます。
 さらに、gzipやbzip2、xzなどの圧縮ツールと組み合わせることで、**圧縮アーカイブ(例:.tar.gz)**を作成することも可能です。

項目説明
コマンド名tar
主な用途ファイルやディレクトリをまとめて1つのアーカイブにする/展開する。
出力形式.tar、.tar.gz、.tar.bz2、.tar.xz など
主な動作アーカイブの作成・展開・内容確認・追加など
対応圧縮形式gzip(-z)、bzip2(-j)、xz(-J)

💡 ポイント
 tar自体は「まとめるだけ」のコマンドであり、圧縮はオプションによって別ツール(gzipなど)を呼び出すことで実現します。

⚙️ tarコマンドの書式

tar [オプション] アーカイブファイル名 ファイルやディレクトリ
パラメータ内容
[オプション]tarの動作を指定する(例:-c, -x, -v, -fなど)
アーカイブファイル名出力または入力のアーカイブファイル名
ファイルやディレクトリアーカイブ化または展開対象のパス

🧾 主なオプション一覧と説明

オプション説明
-c新しいアーカイブを作成する(create)
-xアーカイブを展開する(extract)
-fアーカイブファイルの名前を指定する(file)
-v処理の詳細を表示する(verbose)
-zgzip形式で圧縮・解凍する(gzip連携)
-jbzip2形式で圧縮・解凍する
-Jxz形式で圧縮・解凍する
-r既存アーカイブにファイルを追加する(append)
-tアーカイブの中身を一覧表示する(list)
-u新しいファイルをアーカイブに追加する(update)

💬 オプションの組み合わせが重要!
例えば、-cvf のように複数のオプションを組み合わせて使用します。
順番はあまり厳密ではありませんが、-fの後には必ずファイル名を指定する必要があります。

🧩 tarコマンドの使い方(例付き)

① ファイルをアーカイブ化(まとめる)

[suzuki@AlmaLinux ~]$ tar -cf archive.tar file1 file2

📘 解説
file1 と file2 をまとめて archive.tar というアーカイブファイルを作成します。
圧縮はされず、単純に1つのファイルに結合されます。

② アーカイブを展開(元に戻す)

[suzuki@AlmaLinux ~]$ tar -xf archive.tar

📘 解説
archive.tar を展開して、もとの file1 と file2 を復元します。
展開先はカレントディレクトリになります。

③ gzipで圧縮してアーカイブ化

[suzuki@AlmaLinux ~]$ tar -czf archive.tar.gz directory/

📘 解説
directory/ ディレクトリをアーカイブし、同時にgzipで圧縮します。
結果として、archive.tar.gz という圧縮アーカイブファイルが作成されます。

④ アーカイブの内容をリスト表示

[suzuki@AlmaLinux ~]$ tar -tf archive.tar
file1
file2

📘 解説
アーカイブを展開せずに、中に何が入っているかを確認できます。
誤って上書きしたくないときや内容確認に便利です。


⑤ アーカイブに新しいファイルを追加

[suzuki@AlmaLinux ~]$ tar -rf archive.tar newfile

📘 解説
既存の archive.tar に newfile を追加します。
バックアップファイルなどを段階的にまとめたいときに使います。

🧮 圧縮形式と拡張子の違い

圧縮方法オプション拡張子圧縮率特徴
gzip-z.tar.gz または .tgz標準一般的で高速
bzip2-j.tar.bz2圧縮率が高いがやや遅い
xz-J.tar.xz非常に高圧縮率が最も高く、時間がかかる

💡 おすすめ
一般的な用途では gzip形式(-z) が最もバランスが取れていて使いやすいです。

✅ まとめ:tarコマンドでスマートにまとめよう!

tarコマンドは、「ファイルをまとめる・展開する・圧縮する」の3拍子がそろった強力なツールです。
単なるバックアップだけでなく、データ転送やログ管理など、あらゆる場面で活躍します。

💡 覚えておきたい基本操作

操作コマンド例
まとめる(アーカイブ)tar -cf archive.tar file1 file2
展開するtar -xf archive.tar
圧縮してまとめるtar -czf archive.tar.gz directory/
中身を確認するtar -tf archive.tar
追加するtar -rf archive.tar newfile

AlmaLinuxのようなLinux環境でファイルを効率的に扱うなら、
tarコマンドの基本操作は必ずマスターしておきましょう!