バックアップ間でフォルダや大容量ファイルの名前が変更された可能性があることに気付くほど「スマート」なバックアップツールはありますか?たぶん場所が変わっても(それほど複雑ではありませんが)?
私の質問は明確ですか?
現在のバックアップ方法はすべて、既存のバックアップに新しいディレクトリを追加します。変更されていない部分に触れずに「違いをコピー」する方法は?
答え1
はい、重複排除次のバックアップツールrestic
そしてborgbackup
そうします。
これは、特定のデータブロック(ファイル全体である必要はありません)がすでに以前のバックアップに存在しているかどうかを検出し、それを再保存しません。また、他のファイルでも同じブロックを検出するため、同じMP3ファイルの15個のコピーが一度だけ保存されます。
私は2つのJPEGファイルセット(macOSフォトアルバムアーカイブに1つ、構造化された日付ベースのディレクトリ階層の元の写真と同じセット)を持つコンピュータでこれを使用しています。これは2 * 60 Gbのデータですが、重複排除さrestic
れるため、60 Gbのみが保存されます。
別の例は別のマシン(今回はOpenBSD)にあります。同じGitリポジトリに対して2〜3つの異なるチェックアウトがありました(理由は尋ねないでください)。これは可能な限り重複排除され、他のファイルが占めるおおよそのサイズのみを使用します(270Mb.git
ディレクトリはほとんど同じで、バックアップに一度だけ保存されます)。
ディレクトリを移動してもバックアップに書き込まれるデータの量は数キロバイトです(ディレクトリ構造のサイズによって異なります)。 270Mb Gitリポジトリの1つの名前をテストし、バックアップを実行しました。これにより、バックアップに500 KB以上が記録されます(このデータは、ファイルの場所に関する情報、所有権、タイムスタンプなどのメタデータです)。
また、重複排除バックアップツールを使用すると、複数のコンピュータのデータを同じ場所にバックアップし、コンピュータ間のデータ重複を削除できます。たとえば、3台のコンピュータにあるDropboxフォルダが3回保存されないようにすることができます(少なくとも可能ですrestic
)。
これ欠点重複排除バックアップツールを使用することの1つの欠点は、バックアップをファイルに移動できないことです(どういうわけかスナップショットをディレクトリにborgbackup
マウントできるようにすることもできますが、OpenBSDで使用されているFuseを使用しているため、見ていません) . サポートしません)。スナップショットを復元したり、スナップショットから必要なファイルを復元したりするには、バックアップツールを使用する必要があります。
SFTPを介してSFTPがインストールされていないサーバーrestic
にバックアップできるため、これを使用します。別のアプローチは、バックアップサーバーで()を使用してRESTサーバーをrestic
実行し、クライアントがサーバーと通信できるようにすることです。restic
rclone
rclone server restic ...
restic
borgbackup
データブロックの圧縮は許可されていますが、バックアップがborgbackup
あるマシンにインストールする必要があると思います。 borgbackup
また、(IMHO)の設定は少し難しいです。
最新バージョンはrestic
圧縮(使用zstd
)もサポートしています。