GNU/Linux >> Linux の 問題 >  >> Linux

Linuxでtarコマンドを使用してバックアップを作成する方法

こんにちはLinuxオタク、Linuxシステムで無料のコマンドラインバックアップツールを探しているなら、tarコマンドがあなたのための解決策です。 Tarコマンドを使用すると、アプリケーション、構成ファイル、およびシステムのフォルダーのバックアップを作成できます。

Tarは「テープアーカイブ」の略で、複数のファイルやディレクトリをtarファイルにアーカイブできます。このtarは、gzipおよびbzip2圧縮ユーティリティを使用して圧縮することもできます。 tarバックアップの準備ができたら、scpまたはrsyncコマンドを使用してリモートバックアップサーバーに簡単に転送できます。

この投稿では、Linuxでtarコマンドを使用してバックアップを作成する方法を示します。

tarバックアップファイルを作成するには?

tarバックアップファイルを作成するには、最初にバックアップの一部となるファイルとフォルダーを特定します。 / home / linuxtechi、/ etc、および/optフォルダーのバックアップを取りたいとしましょう。次のtarコマンドを実行します

$ tar {tar-backup-filename} {files-folders-to-be-backed-up}

$ sudo tar -cvpf  system-back.tar  /home/linuxtechi /etc /opt

これにより、現在の作業ディレクトリにtarボールが作成されます。上記のtarコマンドでは、次のオプションを使用しました

  • c –新しいアーカイブを作成する
  • v –tarファイルの作成中に詳細な出力を表示します
  • f –アーカイブファイル名
  • p –権限を保持する

ご覧のとおり、tarファイルを圧縮するための圧縮オプションは使用していません。したがって、アーカイブ中にtarバックアップファイルを圧縮するには、-z(gzip圧縮)または-j(bzip2圧縮)を使用します

gzip圧縮と一緒にtarバックアップを作成する

gzip圧縮を使用するには、tarコマンドで「z」を使用します。今回のtarバックアップファイルの拡張子は.tgzまたは.tar.gz

になります。
$ sudo tar -zcvpf system-back.tgz /home/linuxtechi /etc /opt

bzip圧縮と一緒にtarバックアップを作成する

tarコマンドで「j」オプションを使用してbzip2圧縮を使用します。今回は、tarバックアップファイルの拡張子が.tbz2または.tar.bz2になります

$ sudo tar -jcvpf system-back.tbz2 /home/linuxtechi /etc /opt

tarバックアップにファイルを追加するにはどうすればよいですか?

既存のtarバックアップファイルにファイルを追加するには、「-r」オプションを使用します。完全なコマンドは次のようになります。

構文:$ tar -rvf {tar-backup} {new-file-to-be-appended}

/root/app.yamlファイルをsystem-backup.tarに追加し、実行するとします

$ sudo tar -rvf system-back.tar /root/app.yaml

注:圧縮されたtarバックアップはサポートされていないため、ファイルやフォルダーを追加することはできません。

tarバックアップの作成中にファイルを除外するにはどうすればよいですか?

tarバックアップの作成中にファイルを除外するには、「-X」オプションを使用してからファイルを除外します。除外機能を使用するには、除外するファイル名を持つ除外ファイルを作成する必要があります。

$ cat exclude.txt
/etc/debconf.conf
/etc/hosts
$

次のコマンドを実行して、/ etc

のtarバックアップを作成するときに、exclude.txtに記載されているファイルを除外します。
$ sudo tar -X exclude.txt -zcpvf etc-backup.tgz /etc

tarバックアップの内容を表示するには?

tarバックアップの内容を表示するには、「-t」オプションを使用します。完全なオプションは「-tvf」になります。例を以下に示します:

$ sudo tar -tvf system-back.tgz | grep -i etc/fstab
-rw-rw-r-- root/root    665 2021-07-07 04:57 etc/fstab
$

tarバックアップを抽出する方法は?

tarコマンドで「-x」オプションを使用してtarバックアップを抽出します。完全なオプションは「-xpvf」になります。例を以下に示します

$ sudo tar -xpvf system-back.tgz

このコマンドは、現在の作業ディレクトリにあるsystem-back.tgzを抽出します。特定のフォルダに抽出する場合は、「-C」オプションに続けてフォルダパスを使用します。次の例では、/ var/tmpフォルダーにあるsystem-back.tgzを抽出しています。

$ sudo tar -xpvf system-back.tgz -C /var/tmp/
$ ls -l /var/tmp/

tarバックアップの整合性を確認するにはどうすればよいですか?

タールボールの場合は、「-tf」オプションを使用して、出力を/ dev/nullファイルにリダイレクトします。

$ tar -tf system-back.tar > /dev/null

上記のコマンドで画面に出力が生成されない場合は、破損はないと言えます。

破損した場合は、次のような出力が得られます。

圧縮されたtarバックアップの整合性を確認するには、次を使用します

.tgz / .tar.gz

の場合
$ gunzip -c system-back.tgz | tar -t > /dev/null

.tbz2 / .tar.bz2

の場合
$ tar -tvf system-back.tbz2 > /dev/null

上記のコマンドは、画面に出力を生成しないはずです。出力がある場合は、圧縮されたtarバックアップに破損がある可能性があると言えます。

これですべてです。参考になると思います。以下のコメントセクションでフィードバックや質問を共有してください。


Linux
  1. LinuxでTarコマンドを使用する方法

  2. Linuxコマンドのスクリプトを作成する方法

  3. Linuxで特定のサイズのファイルを作成する方法

  1. 例を使用してLinuxでIPコマンドを使用する方法

  2. Lnコマンド:Linuxでシンボリックリンクを作成する方法

  3. Linuxlnコマンド

  1. Linuxエイリアスコマンド:例で使用する方法

  2. Linuxでのtarコマンドと例

  3. GlanceコマンドでLinuxシステムを監視する方法