直接接続せずに、小さな中間ストレージデバイスを介して 2 台のコンピューター間でディレクトリを同期することは可能ですか?

直接接続せずに、小さな中間ストレージデバイスを介して 2 台のコンピューター間でディレクトリを同期することは可能ですか?

私はしたいと思います一方通行直接接続せずに 2 台のマシン間で大きなディレクトリを同期します。両方のマシンに接続されたクラウド ストレージ (コンピューティング能力なし) を使用するか、マシンに交互に接続できる中間ストレージ デバイス (別のマシンではなく HDD、フラッシュ ドライブなど) を使用します。

注目すべき重要な点は、中間ストレージにはフォルダー全体を転送するのに十分なスペースがないが、最大のファイルを転送するには十分なスペースがあるということです。

流れは次のようになると思います:

  1. 宛先マシン上: 宛先フォルダのスナップショットを作成し、共有ストレージに保存します。
  2. ソースマシン上: ソース フォルダーの構造を共有ストレージのスナップショットと比較し、不足しているすべてのファイルをメタ情報とともに共有ストレージに配置します (共有ストレージの使用可能なスペースによって制限されます)。
  3. 宛先マシン上: 共有ストレージからファイルをコピーし、フローを繰り返す必要があるかどうかを通知します。

macOS/Linux シェルからこのようなことを実行するための既存のソリューションはありますか?

答え1

ただ使うだけ同期中間デバイス上で。

Rsync は次のようなタスクに最適です。ソースをソース マシンにし、宛先を宛先マシンにすれば完了です。

コマンドは次のようになります。

rsync -avz user@source_machine.local:/source/directory/ user@destination_machine.local:/destination/directory/

Rsync を使用すると、すべてが中間マシン上の CPU とネットワーク リソースのみを使用するネットワーク タスクになるため、中間マシン上のストレージ オーバーヘッドを気にすることなく動作するはずです。

しかし、どちらのオプションでも、ソース マシンとターゲット マシンで何らかの OS が実行されている必要があります。クラウドベースの「ダム」ストレージや、USB フラッシュ ドライブなどの単純な外部ストレージ デバイスは、間に何らかの OS がなければ「ブリッジ」できません。

最終的には、方程式の両側に OS が必要です。そして、中間デバイスでクラウド デバイスをマウントし、次に USB フラッシュ ドライブなどの外部ストレージ デバイスをマウントして、Rsync を実行するだけで準備完了です。

関連情報