web-dev-qa-db-ja.com

3か所間のファイル同期?

3つの場所の間でファイルを同期する方法が必要です。これらはすべて変更できます。

すべての場所はLinux上にあり、同期ツールは手動ではなくcronjobから実行する必要があります。

unisonを試しましたが、3つの別々の場所で機能させることができません(a <=> bおよびb <=> c同期を使用して構成しようとしましたが、機能しません)。

このようなことをすることができるツールはありますか?

2
user7385
4
Saxtus

ユニゾンがこれを行います。同期データを格納するUnisonフォルダー(osxパス:〜/ Library/ApplicationSupport/Unison)内に、2つの.prfファイルを作成します。

example1.prf

# Unison preferences file

root =  /Users/XXXX/Desktop/a 

root = /Users/XXXX/Desktop/b

perms = 0

#confirmbigdel = false

example2.prf

# Unison preferences file

root =  /Users/XXXX/Desktop/b 

root = /Users/XXXX/Desktop/c

perms = 0

#confirmbigdel = false

「unisonexample1」と「unisonexample2」を実行すると、すべてのフォルダが同期されます。

最新のsvnからユニゾンをビルドすると、これをさらに一歩進めて、ファイルが変更されるとすぐにすべてのフォルダーを更新することができます。最新のsvnでは、fsmonitor.pyファイルがUnisonを実行しているのと同じbinディレクトリにある場合、フラグ「-repeatwatch」(例:「unisonexampleX -repeatwatch」)を使用してフォルダの変更を監視できます。 。

同じバージョンがすべてのマシンにインストールされている場合、これはsshでも機能します...基本的にプライベートドロップボックス。いつでも変更を受け入れるために常にインターネットに接続されたサーバーをセットアップし、すべてのコンピューターがそのサーバーに接続して変更を探すことは、おそらく利点です。

3
Tony

異例のアイデアですが、GITだけを使用することはできませんか?

1
Jimmy Hedman

NFSまたはSamba、cronジョブは必要ありません。

1
0x44

Projectlockerやcvsdudeなどの無料サービスを使用したSubversionはどうですか?非常に簡単にスケーラブルです。

0
trip0d199

パーティーに遅れていることはわかっていますが、3つ(またはそれ以上のホスト)をユニゾンと同期させることは可能です。私はこれを4台のマシンで定期的に行っています。 1つのホストが「中央」に指定され、他のホストがこの「中央」ノードに対して同期し、互いに同期しない、星型のトポロジを作成しました。中央ノードに変更がない場合が最も簡単です。あなたの場合、これには4番目のノードが必要です。

0
Edward

データは常にすべての場所で変化しますか?それ以外の場合は、1つ(マスターとして宣言)から作業中のマシンにrsyncを実行して作業を開始し、完了したらrsyncを元に戻すことができます。

0
Jimmy Hedman