0

分割されたイメージ ディレクトリ (a0-z9) を持つ 3 つの個別のサーバーがあります。残念ながら、rsync と php のアップロード スクリプトが途中で壊れてしまい、現在、3 つのサーバー上に同一であるはずの 3 つの一致しないディレクトリがあります。上書きは気にしません... 既に存在する場合は、上書きする必要はありません — 同じです。

サーバーA

/path/img/a0/001/
/path/img/a0/.../
/path/img/a0/999/
/path/img/../
/path/img/z9/001/
/path/img/z9/.../
/path/img/z9/999/

ServerB と ServerC のレイアウトは同じです。すべてがまったく同じ 2 桁のディレクトリ構造 (260 ディレクトリ、a0-z9) を持っています。しかし、それらには異なるサブディレクトリがあります。ServerAには が含まれているa0/001/可能性がありますが、このディレクトリはサーバー B および C にない可能性があります (またはその逆)。

3 つのディレクトリすべてをマージする必要があります。

最終的c7/003/に、1 つのサーバーに存在する場合は、3 つすべてに存在する必要があります。

これどうやってするの?すでに修正済みですが、現在の混乱を解消する必要があります。

4

2 に答える 2

0

2 つのフォルダーを同期するための rsync コマンドを以下に示します (適切なソースと古い/壊れた宛先が与えられた場合)。おそらく実行時間が長すぎるため、スクリプトが停止します。小さいサブディレクトリに対して実行してみてください。

rsync -a --delete-after /source/images/ -e 'ssh -l username' \
    hostname:/path/to/destination/images/
于 2012-10-11T05:45:05.910 に答える
0

双方向の同期が必要なので、Unison を使用してみることができます。最初にサーバー 1 をサーバー 2 と同期し、次にサーバー 1 をサーバー 3 と同期し、最後にサーバー 1 をサーバー 2 と同期します。最終的に、3 つのサーバーはすべて同じファイル セットを持つ必要があります。

于 2012-10-12T13:58:09.303 に答える