クロスプラットフォームのファイル同期方法


1

異なるバージョンのWindowsクライアント(Win98、NT、Windows 7)とLinuxファイルサーバーを含むクロスオペレーティングシステムネットワーク内で、フォルダを同期したいと思います。

2つの制限があります。

1)各クライアントはサーバー上の特定のフォルダーに同期する必要がありますが、ディスク容量の制限により、クライアントは互いに同期しないようにする必要があります。

Server -+- SyncFolder for Client A  <---> Folder_X on Client A
        |                                 
        +- SyncFolder for Client B  <---> Folder_Y on Client B 

上記の例では、クライアントAとクライアントBは同期しません。

2)インターネットに接続できないため、Dropboxは使用できませんが、Owncloudなどのプライベートクラウドの設定は使用できません。

どのような解決策がありますか?

編集する 完璧なソリューションは、dropboxや同様のツールと同じように即座に同期し、ユーザーの操作を必要としません。

回答:


0

「1)各クライアントはサーバー上の特定のフォルダと同期する必要がありますが、ディスク容量の制限により、クライアントは互いに同期しないようにする必要があります。

「同期」という言葉は曖昧です。この用語には少なくとも3つの解釈が考えられます。

  1. 「プッシュオンリー」同期。クライアントはデータをサーバーにプッシュしますが、サーバーからデータをダウンロードしません。

  2. 「プルのみ」同期。クライアントはデータをサーバーにダウンロードしますが、ローカルの変更はサーバーにプッシュしません。

  3. "双方向"同期。1と2を組み合わせたもので、同じ名前のファイルがプッシュまたはプルされたときの競合のマージまたは解決に関するいくつかの規則が組み合わされています。

プッシュのみが必要な場合は、FTPやSCP(数十の利用可能なクライアント)のような単純なものを使用することができます。 とサーバー すべての主要なプラットフォームで)データをサーバーにプッシュし、サーバー上の情報は無視します。

特定のファイルを特定の規則に従ってのみ同期したい場合は、基本的に「規則付き」の双方向同期です。 "5"で終わる年にウルグアイを越えて月の満ち欠けが午前12時7分になったときにファイルをダウンロードするなど、あなたのルールは任意に複雑なルールであるかもしれませんが、 基本的な 一般的に予想される規則のサポートは "rsync"プログラムで利用可能です。見る http://linux.byexamples.com/archives/305/filter-what-to-backup-with-rsync/


私は第二の解釈を理解していない。明確にしてください。同期についての私の理解は、どちらの側のどんな変更も他方に反映されるということでした。ただし、この特定の設定では、「プッシュのみ」で十分です。違いを指摘してくれてありがとう。
Bjoern

プルオンリーのシナリオでは、どのクライアントも中央ファイルサーバーにデータを保存しません。交換される唯一のデータは、クライアントがLinuxファイルサーバー上にデータの「ミラー」またはローカルコピーを保持していることです。それが私が意味するのはプルのみです。クライアントがデータを生成しているものである場合、これはあなたの状況では意味がないかもしれません。プッシュのみが必要だと言ったので、SCP、FTP、またはSFTPを設定してみてください。
allquixotic

SCP、FTP、またはSFTPのいずれかでは、誰かがプッシュを開始する必要があります。私が念頭に置いているのは、ユーザーの操作なしでデータをアップロード(または同期)する、より直感的なアプローチです。もちろんこれはcronの仕事でも可能ですが、私はユーザーの介入なしに即時転送をしたいと思います。 Linuxでは、inotify-toolsを使ってプッシュを開始できますが、私のクライアントはウィンドウベースです。 OwnCloudについても考えましたが、これはすべてのクライアント間でデータを同期させるでしょう。
Bjoern

あなたはFileSystemWatcherとFTP / SFTPクライアントライブラリを使用して.NETプログラムを書くことができます...ユーザーがログインしたときにバックグラウンドでプログラムを実行してください。ファイルサーバへのワイヤ。見る msdn.microsoft.com/en-us/library/… - これは非常にありふれた状況で、これを自動的に行うための製品が存在しないのであれば私は驚かせるでしょう。 恐らく 誰かにお金を払うことを含むので、それはあなた次第です...
allquixotic

0

あなたがする必要があるのはあなたが持っているすべてのバージョンで動作するWindows同期プログラムを見つけることです。私は個人的に使用しました 同期中 しかし、現在のバージョンはNT以前のものをサポートしていないかもしれません - 古いバージョンをあなたに提供しても構わないかもしれませんが。彼らはまた、サイトのライセンスを持っています。

マイクロソフトには無料のユーティリティがあります SyncToy しかし、やはり、私はそれがWin98をサポートするとは思わない。


ありがとうございました。ここでは、異なるWindowsバージョンがボトルネックになっているようです。
Bjoern

@Bjoern:あなたが持ってきた/組み込まれていたWindowsのすべてのバージョン xcopy 適切な引数が与えられた場合に同期を行うために使用できるコマンドラインユーティリティ。
martineau

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.