この簡単なチュートリアルでは、Rsyncユーティリティを使用してLinuxシステム全体をバックアップする方法を説明します。この方法は、rsyncがインストールされているほとんどすべてのLinuxシステムで機能します。
先日、Ubuntu16.04LTSサーバーで実行されていた仮想マシンの1つを再インストールしたいと思いました。再インストールする前に、システム全体をバックアップしようとしました。
これを行う最も簡単な方法を探しているときに、ArchLinuxwikiで最も簡単な解決策を見つけました。こんなに簡単になるとは思ってもみませんでした。
ルート全体をコピーしました( /
)単一行コマンドを使用したRsyncを使用したツリー。はい、それはただのワンライナーコマンドです。システムをバックアップするためのツールはたくさんありますが、少なくとも私にとっては、この方法は非常に簡単で便利だと思います。
また、この方法は、 ddを使用したディスククローン作成よりもはるかに優れています。 指図。ハードドライブのサイズが異なるか、異なるファイルシステムを使用するかは問題ではないためです。ハードディスクのサイズや基盤となるファイルシステムに関係なく機能します。
Rsyncを使用してLinuxシステム全体をバックアップします
まず、バックアップメディア(USBサムドライブまたは外付けハードディスク)を挿入します。次に、' fdisk -l
を使用してドライブ文字を検索します ' 指図。私の場合、ペンドライブIDは / dev / sdb1
です。 。
ドライブを任意の場所にマウントします。 / mnt
の下にマウントします 。
$ sudo mount /dev/sdb1 /mnt
システム全体をバックアップするには、ターミナルを開き、 root
として次のコマンドを実行するだけです。 ユーザー:
$ sudo rsync -aAXv / --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /mnt
このコマンドは、ルート全体( /
)をバックアップします )ディレクトリ、 / dev
を除く 、 / proc
、 / sys
、 / tmp
、 / run
、 / mnt
、/メディアコード> 、
/ lost + found
ディレクトリを作成し、データを / mnt
に保存します フォルダ。
上記のコマンドを分解して、各引数が何をするかを見てみましょう。
-
rsync
-高速で用途の広いローカルおよびリモートのファイルコピーユーティリティ -
-aAXv
-ファイルは「アーカイブ」モードで転送されます。これにより、シンボリックリンク、デバイス、権限、所有権、変更時間、ACL、拡張属性が確実に保持されます。 -
/
-ソースディレクトリ -除外コード>
-指定されたディレクトリをバックアップから除外します。-
/ mnt
-バックアップ先のフォルダです。
重要な注意: 宛先ディレクトリを除外する必要があることに注意してください 、ローカルシステムに存在する場合。無限ループを回避します。
ハードリンクを保持する場合は、 -H
を含めるだけです。 上記のコマンドのフラグ。より多くのメモリを消費することに注意してください。
バックアップを復元するには、上記のコマンドで送信元パスと宛先パスを逆にするだけです。
これはローカルおよびスタンドアロンシステムにのみ適していることに注意してください。システムがネットワーク上の他のシステムによってアクティブにアクセスされている場合、それはより良い解決策ではありません。
なぜなら、システムのコンテンツは毎分絶えず更新される可能性があり、一部のファイルはrsyncプロセス中に変更される可能性があるためです。
たとえば、rsyncがファイル2に到達すると、前のファイル(ファイル1)の内容が変更される可能性があるとします。これにより、そのバックアップを使用する必要があるときに依存関係エラーが発生します。
このような場合、スナップショットベースのバックアップがより適切なアプローチです。システムはバックアッププロセスが開始する前に「フリーズ」し、バックアッププロセスが終了すると「フリーズ解除」するため、すべてのファイルに一貫性があります。
関連記事:
- LinuxでRsyncを使用してファイルとディレクトリをバックアップする方法
- LinuxでDejaDupを使用してファイルをバックアップおよび復元する方法
- Rsnapshotを使用してバックアップサーバーをセットアップする方法
- LinuxでResticを使用してデータをバックアップおよび復元する方法
- タイムシフトを使用してLinuxシステムをバックアップおよび復元する方法
- LinuxでファイルをUnisonと同期する方法
- Linuxでローカルディレクトリとリモートディレクトリを同期する方法
- Zaloha.shを使用してファイルとディレクトリを同期する方法
- CYA –Linux用のシステムスナップショットおよび復元ユーティリティ
出典:
- rsyncを使用した完全なシステムバックアップ