Linuxの「tar」コマンドは、Linuxにおいて広く使われているアーカイブファイル作成用のコマンドだ。幾つか基本のコマンドを使用しながら、ファイルのバックアップから復元までの手順を学んでおこう。
OS「Linux」の世界で広く使われている「tar」は、複数のファイルを1つにまとめて保存するファイル形式、またはアーカイブファイル(複数のファイルをまとめたもの)を作成するためのコマンドを指す。tarは「Tape Archiver」の略であり、その名称の通り、もともとはテープを使ったバックアップと復元を念頭に置いている。
Linuxのアーカイブとtarコマンドの役割や用途について簡単に触れた上で、実際にアーカイブや復元を実行するためのコマンドと、応用方法を紹介する。
tarコマンドは、以下の用途に使える。
一般的にLinuxユーザーは、バンドルされたファイル(圧縮されることもある)をアーカイブと呼ぶ。tarは、アーカイブの作成とファイルの展開という2つの補完的な機能に基づいて動作する。
アーカイブの作成では、バックアップとして、あるいは転送のためにファイルをグループ(ユーザーの所属をまとめた区分)にコピーする。展開(解凍)では、グループからディレクトリ(格納場所のこと)にファイルをコピーする。アーカイブの作成はバックアップ機能であり、ファイルの展開は復元機能であると考えると分かりやすいだろう。
tarとさまざまな圧縮ツールを組み合わせれば、アーカイブの管理が簡単にできるようになる。
お使いのLinuxにtarがインストールされていることを確認しよう。ほぼ間違いなくインストールされているのだが、確認しておいて損はない。
確認の方法としてまず、Linuxでコマンド操作ツール「端末」(ターミナル)を開く。Linuxのディストリビューションは問わない。端末を開いたら、以下のコマンドを入力する。
$ which tar
tarが存在することを示す出力結果が表示されるはずだ。その出力結果はほとんどのシステム上では「/usr/bin/tar」と表示される。
必要であれば、tarをインストールする。Red Hatのディストリビューションでは、次のように入力する。
$ sudo dnf install tar
「Debian」や「Ubuntu」では、次のように入力する。
$ sudo apt install tar
次に、以下のコマンドを実行して、作業対象のファイルを幾つか作成する。
$ cd ~ $ mkdir projects $ cd projects/ $ touch file1.txt file2.txt file3.txt $ echo "File 1 Contents" > file1.txt
これでホームディレクトリ(ユーザーごとに割り当てられるディレクトリ)に「projects」という名前のディレクトリを作成し、そこに3つのテキストファイルを配置することができた。この例では、これらのファイルをバックアップ対象のデータとして扱う。
tarによるバックアップと復元を実施するに当たり、まずはアーカイブを用意し、そこに先ほど作成した3つのテキストファイルをコピーする。
次の表は、アーカイブを作成する際の主なtarオプションだ。
オプション | オプションの説明 |
---|---|
-c | アーカイブファイル(複数のファイルをまとめたもの)を作成する。これはバックアップコマンドだと考えてほしい。 |
-v | tarコマンドが完了したときに出力を返す。これは必須ではないが、コマンドがどのファイルをアーカイブにコピーしたのかを確認するのに便利だ。 |
-f | アーカイブファイルを指定する。これは必須。 |
-r | 既存のアーカイブにさらにファイルを追加する。 |
ここまでに、Linuxのアーカイブと、アーカイブを作成するためのtarオプションを知ることができた。
次回は、tarオプションを使用しながらアーカイブ作成と復元の手順を紹介する。
米国TechTargetの豊富な記事の中から、さまざまな業種や職種に関する動向やビジネスノウハウなどを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
FacebookやXなど主要SNSで進む「外部リンク制限」の実態 唯一の例外は?
ソーシャルメディアはかつてWebサイトへの重要な流入経路であった。しかし、最近は各プラ...
生成AIとAR/VRで失った個性を取り戻す――2025年のSNS大予測(Instagram編)
万能だが特徴のはっきりしない「何でも屋」と化したInstagram。2025年の進化の方向性を予...
「AIネイティブ世代」の誕生 10代のAI活用度合いは?
博報堂DYホールディングスのHuman-Centered AI Instituteは、AIに対する現状の生活者意識...