rsyncを使用してシステムを複製するときに何を考慮する必要がありますか?

rsyncを使用してシステムを複製するときに何を考慮する必要がありますか?

だから私はLinuxシステムがインストールされたUSBスティックを持っており、計画は次のとおりです。

USBフラッシュドライブにバックアッププログラムをインストールして、システムをサーバーにバックアップしたいと思います。サーバーには、データが書き込まれる別のUSBスティック(正確なモデルとサイズ)がインストールされています。

USBスティックAを紛失した場合は、家に帰ってサーバーからUSBスティックBを取り外し、何も起こらなかったかのように使用したいと思います。

このrsyncコマンドラインがあります。

rsync -avPAHXxz --numeric-ids --exclude='/dev' --exclude='/sys' --exclude='/efi' --exclude='/proc' --exclude='/run' --exclude='/mnt' --exclude='/tmp' --exclude='/home/*/.cache' --exclude='/root/.cache' --delete -e 'sudo -u user ssh' -- / root@server:backups/rootfs

同様のディレクトリがあります/efi

これは、バックアップをスケジュールしてからサーバーから復元するときに便利です。しかし、私の目標は、バックアップ自体を最終的に利用可能なシステムにすることです。

ボーナスの質問:新しいシステムでは、パーティションのUUIDが異なります。これは、USBスティックを使用する前にBIが入り、UUIDを変更する必要があることを意味します。私はbashスクリプトを使ってこれを行うことができると確信しているので、問題はありません。しかし、私が知っておくべき他の同様のことがありますか?システムが機能するには、別のインスタンス固有のデータを交換する必要がありますか?

答え1

アーカイブモードを使用し、run、sys、tmp、run、procなどの一時ディレクトリを除外します。このリンクで詳細を確認できます。入場:https://wiki.archlinux.org/title/rsync#As_a_backup_utility

ボーナスの質問については、ddを使用して良い解決策を提示します。

バックアップ:dd if = / dev / sda | gzip -9 > backup.img.gz

復元:zcat backup.img.gz dd = / dev / sda |

しかし、今はシステムを実行してはいけません。それ以外の場合は問題が発生します。この目的のためにライブ展開を開始できるのと同じです。

関連情報