適切なバックアップ戦略を見つける(borgbackup、Resticなど)

適切なバックアップ戦略を見つける(borgbackup、Resticなど)

私はこのような質問が何度も提起されたことを完全に知っています。しかし、さまざまなバックアップツールに関する広範なドキュメントを読んでも、すべての質問に答えることはできないので、ここで私のシナリオを説明してコメントを得たいと思いました。

私のニーズに合ったバックアップ戦略を開発したいと思います。要件の簡単な概要は次のとおりです。

  • オープンソースソフトウェア
  • コマンドラインサポート(GUIだけでなく)
  • 複数のデバイスからバックアップして復元したいです。 (すべてのデバイスはLinuxを実行します)
  • 特定のファイル/フォルダをバックアップし、他のファイル/フォルダは無視できるようにしたいです。
  • 次のような複数のターゲットにバックアップできるようにしたいです。
    • 外付けハードドライブ
    • 一部の外部サーバー(家がなくなる場合に備えて)
  • たとえば、cronを使用してバックアップを自動化したいとします。
  • バックアップが正しく暗号化されていることを願っています。
  • 以前のバックアップのデルタのみが保存されるように、バックアップの重複を削除したいと思います。
  • バックアップから復元するときは、復元したバックアップを新しい変更をバックアップするための新しいポイントとして直接使用できるようにしたいです。 (ストレージを新しいシステムに複製したら、新しい変更を直接プッシュできるgit-repositoryについて考えてください。)

いくつかの調査の結果、ほとんどの場合に適しているように見える2つの計画があります。

borgbackupを使って2つの問題を見つけました。

  • ファイルを復元する方法には、メルトダウンインストールのバックアップまたはバックアップを直接抽出する2つの方法があります。ただし、復元すると常にファイルのみがインポートされます。新しいシステムにバックアップを復元するときに新しいホストで新しいバックアップを実行するには、すべてのリポジトリをリセットする必要がありますか?とても不便です。 (再び、復元されたデータ/ストレージを直接使用して新しいデータをバックアップ(プッシュ)できるようにするgitリポジトリと同様の動作をしたいと思います。)
  • バックアップ用に複数のエンドポイントを指定することは不可能だと思います。たとえば、リモートサーバーにデータをバックアップできますが、外付けハードドライブと同期することはできません。 (望むより:https://borgbackup.readthedocs.io/en/stable/faq.html#can-i-backup-from-multiple-servers-into-a-single-repository)。私の考えでは、コールドストレージバックアップ(外部HDDなど)はborgには適していないようです。

休憩:

  • 本質的にBorgと同じです。

だから私の質問は、上記のシナリオに適したバックアップソリューションを実装する方法です。 borgとResticはここで仕事に適したツールですか?それでは、私が説明した問題をどのように処理しますか?そうでなければ、他のより良いバックアップソフトウェアがありますか?

答え1

クローン私はこれがあなたのすべての要件を満たしていると思います。

  • オープンソースソフトウェア
  • コマンドラインサポート
  • 複数のデバイスからのバックアップと復元(複数のオペレーティングシステムをサポート)
  • 特定のファイル/フォルダをバックアップし、他のファイル/フォルダは無視します。
  • 複数のターゲットへのバックアップ
  • 自動バックアップ(例:cronを使用)
  • バックアップ暗号化可能
  • 以前のバックアップのデルタのみ保存(=>デルタ)
  • 復元したバックアップを新しいバックアップ先として使用する

たぶんあなたは試してみたいかもしれませんrclone sync src dest --backup-dir incr$(date "+%Y%m%d.%H%M%S")

あなたが子供について述べたように:あなたもぜひ見たいです。子添付。上記はまさにこの目的のためです。 (正直言って、rcloneは長年の個人的な経験を通して堅牢であることを知っていますが(これまで私を失望させたことはありません))機能は非常に興味深いようですが、これまでgit-annexを使ったことはありません。

一般的に言えば、環境によって異なります。実際の質問は次のとおりです。複数のユーザーと多数のシステムのための継続的なサービスでソリューションを構築する場合は、提案されているようにシステム全体を使用することをお勧めします。https://unix.stackexchange.com/a/683353/118985専用バックアップ環境を構築します。

ただし、それがパーソナルシステム用であり、いくつかのコンピュータにのみ適用される場合(上記の記事で推測することができます)、必要な管理作業とリソースははるかに少なく、スピードが上がり、経験が減ります。欲求不満rclone を使用してシステムを実行します。検索パスに入れる実行可能ファイルであり、ほとんどの場合、暗号化またはクラウドバックアップを使用してプログラムによって生成されたホームディレクトリの小さな設定ファイルです。

答え2

2つのLinux(centosなど)システムを設定して使用するrsnapshot

  • オープンソースソフトウェア
    • はい
  • コマンドラインサポート(GUIだけでなく)
    • GUIがなく、rsnapshotは単純なPerlスクリプトであり、すべてが/etc/rsnapshot.conf
  • 複数のデバイスからバックアップして復元したいです。 (すべてのデバイスはLinuxを実行します)
    • できる
  • 特定のファイル/フォルダをバックアップし、他のファイル/フォルダは無視できるようにしたいです。
    • できる
  • 複数のターゲット(外部ハードドライブや一部の外部サーバー)にバックアップできるようにしたい(家庭で火災が発生した場合)。
    • 可能であり、明らかにインターネット接続が必要であり、他の場所から選択できるいくつかのバックアップシステムが必要です。
  • たとえば、cronを使用してバックアップを自動化したいとします。
    • どのくらいの頻度でバックアップを実行したい場合でも、cronからrsnapshotを呼び出すことができます。とても簡単です。
  • バックアップが正しく暗号化されていることを願っています。
    • RSnapshotのウェブサイトを読んでみると、これはよくわかりません。私はあなたとバックアップサーバー間のSSH接続が暗号化の最初のレベルになると信じています。バックアップサーバーのすべてを「暗号化」する必要がある場合、これは別の話であり、必ずしもrsnapshotの作業ではありません。
  • 以前のバックアップのデルタのみが保存されるように、バックアップの重複を削除したいと思います。
    • rsnapshotのウェブサイトをお読みください。増分バックアップ用にrsnapshotを構成する場合は、許容可能なソリューションを提供できます。必要に応じて重複排除を実行するために、Linuxのバックアップサーバー上で別のソフトウェアを実行することもできます。
  • バックアップから復元するときは、復元したバックアップを新しい変更をバックアップするための新しいポイントとして直接使用できるようにしたいです。 (ストレージを新しいシステムに複製したら、新しい変更を直接プッシュできるgit-repositoryについて考えてください。)
    • rsnapshotはこれに基づいているrsyncため、バックアップサーバーでもプライマリサーバーと同じフォルダ構造を持つことになります。バックアップサーバーでNFSまたは同様のものを構成すると、そのバックアップフォルダ構造をエクスポートできます。使用したいメインサーバー(または他のサーバー)に移動します。

私は16のドライブベイを持つサーバーでrsnapshotを実行しています。最初の7つのドライブベイは/ dataとしてraid-5としてマウントされています。 2番目の7つのベイはraid-5モードで/ backupとしてマウントされ、ルートアクセスのみを許可します。 nfsは/ backupを読み取り専用としてローカルホスト(私のサーバーのみ)にエクスポートし、ユーザーがアクセスできる/ backup2フォルダの下に/ backupを読み取り専用としてマウントしました。フォルダ/ファイル権限はデータ権限のミラーイメージなので、ユーザーが権限を持っている場合は、誤って/ dataの下の元のファイルを削除した場合は、/ backup2の下に移動して必要なものをコピーできます。あなたの場合は、RSnapshotバックアップを受信するように2番目のシステムを設定する必要があります。インターネットにはrsnapshotに関する多くの記事があります。

答え3

私の提案は以下を使用することです。バキュラム。お客様が必要とする正確な要件に合わせて大規模に設定しました。最初は理解するのが少し難しいかもしれませんが、一度設定したらはるかに満足しています。コミュニティもかなり大丈夫です。改善されたrsyncクローンに時間を無駄にしないでください。

関連情報