こんにちはLinuxオタク、Linuxシステムで無料のコマンドラインバックアップツールを探しているなら、tarコマンドがあなたのための解決策です。 Tarコマンドを使用すると、アプリケーション、構成ファイル、およびシステムのフォルダーのバックアップを作成できます。
Tarは「テープアーカイブ」の略で、複数のファイルやディレクトリをtarファイルにアーカイブできます。このtarは、gzipおよびbzip2圧縮ユーティリティを使用して圧縮することもできます。 tarバックアップの準備ができたら、scpまたはrsyncコマンドを使用してリモートバックアップサーバーに簡単に転送できます。
この投稿では、Linuxでtarコマンドを使用してバックアップを作成する方法を示します。
tarバックアップファイルを作成するには?
tarバックアップファイルを作成するには、最初にバックアップの一部となるファイルとフォルダーを特定します。 / home / linuxtechi、/ etc、および/optフォルダーのバックアップを取りたいとしましょう。次のtarコマンドを実行します
$ tar
$ 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バックアップに破損がある可能性があると言えます。
これですべてです。参考になると思います。以下のコメントセクションでフィードバックや質問を共有してください。