以前のバックアップがあるターゲットにディレクトリをバックアップしますか?

以前のバックアップがあるターゲットにディレクトリをバックアップしますか?

私のラップトップのいくつかのディレクトリを外付けハードドライブにバックアップしたいと思います。

外付けハードドライブのターゲットには、すでに自分のラップトップにあるディレクトリの以前のバックアップがあります。

  1. 外付けハードドライブのバックアップを更新する方法を知りたいです。たとえば、次のコマンドは期待どおりに機能しますか?

    rsync -a --delete  /path/to/source/dir  /path/to/dest/dir
    

    rm -r /path/to/dest/dir/*最初は私と同じように動作しますかrsync -a /path/to/source/dir /path/to/dest/dir

  2. rsyncターゲットで以前のバックアップを活用してエラーなしで新しいバックアップをすばやく作成するにはどうすればよいですか(一部のファイルは最後のバックアップ以降に変更された可能性がありますが、それ以上のファイルは変更されません)。以前のバックアップを利用するもう1つの理由は、何も削除せずに新しいバックアップを保存するための外付けハードドライブの容量が不足しているためです。

ありがとうございます。

ベストアンサー1

はい、rsyncそれは良い解決策ですが、使用する方が良いです(末尾のスラッシュを参照)。

rsync -a --delete  /path/to/source/dir/  /path/to/dest/dir/

引用するにはman rsync

ソースの末尾のスラッシュは、ターゲットに追加のディレクトリレベルが生成されないようにこの動作を変更します。ソースの末尾/を「名前でディレクトリをコピーする」ではなく、「このディレクトリの内容をコピーする」と考えることができます[...]

ミラー(まったく同じファイル)を使用すると、--deleteミラーがない場合は追加のバックアップを取得できます(ソースから削除されたファイルはコピーに残ります)。

--delete間違ったディレクトリをターゲットにすると、多くのファイルが削除される可能性があるため、テスト済みのスクリプトにのみ使用を制限するか、-n/を使用して--dry-run最初に何が起こるかを確認するのが最善です。

おすすめ記事