実現で 500 ポイント以上

複数のプラットフォームでファイルを自働で同期する方法

以下の 3 種類のデバイスを使っています。
1. デスクトップ Win XP
2. ノートブック Win 7
3. ノートブック Mac OS 10.6 (できれば)

これらの機器で、あるフォルダ (とその中身) を同期したいと思います。
オンラインストレージには MobileMe の iDisk を使っています。
Mac 用の同期はできなくても OK です。

前提条件
Windows の場合はログイン時に bat ファイルで iDisk にログインして、
iDisk をネットワークドライブ z として割り当てています。
ログイン時にはすでに z:\ にネットワークドライブが割り当てられているものとして考えてください
(それ以外の方法で同期が実現できるのであればこの前提は無視してもOK)

必須条件
ログイン時、およびスクリプト/プログラム実行時にローカルとリモートが同一になること
同じファイルがある場合は更新日時の新しい方で同期されること
リモートにあってローカルにないファイルがあれば、ローカルにそのファイルをコピーする
ローカルにあってリモートにないファイルがあれば、リモートにそのファイルをコピーする

以上
質問があればコメント欄にどうぞ

回答の条件
  • URL必須
  • 1人1回まで
  • 登録:
  • 終了:2010/06/27 09:41:14
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答1件)

質問者が未読の回答一覧

 回答者回答受取ベストアンサー回答時間
1 MasWag 30 20 1 2010-06-22 20:16:37
  • id:Sugriva
    推奨条件
    mac でも動作すること
    接続中のネットワークによって、ログイン時に自働で同期するかどうかが決められる
    同期した結果 (更新、削除など) を表示したりログに残せたりすること
  • id:Sugriva
    >>koriki-WeKan さん
    個人指名では回答拒否を設定していません。
    理由はわかりませんが、1か月に20ユーザ以上に拒否されているなど、何かしらの理由があるのかもしれません。
    今回はご縁がなかったということで。
  • id:doropon
    試していませんので、コメントします。
    svnで、できそうですね。
    SVN subversionは履歴の管理ができますので、
    間違って削除しても戻せます。

    起動時、ログイン時の実行は
    Windowsだとスタートアップ
    OSXだと「システム環境設定」の「アカウント」「ログイン項目」から追加するようです。

    どちらも自動化するのには多少なりともbatファイルなりapplescriptなりで数行書く必要がありますが、
    同期には有用かと。
  • id:Sugriva
    doropon さんコメントありがとうございます。
    同期が目的なので subversion はちとやりすぎ感じがあります。
    ほかに方法がなければ subversion を導入して勉強してみようと思います。
  • id:doropon
    確かにバージョン管理が目的のアプリケーションですしね。

    結構難しいですね。
    んー。
    Windowsの場合は標準で入っているxcopyコマンドで
    ローカルからリモートにコピー オプションは /Dが必要かな。
    リモートからローカルにコピー これも同様
    iDiskに接続するbatに追加すればいけそうではありますね。

    xcopyは結構便利です。

    unix系だと、rsyncを使えばいいかと思いますが、
    Windowsでもrsyncはあるみたいですが、
    これは触ったこともないので自動化できるかがわからないです。

    あ、OSXであればrsyncで大丈夫ですね。

    どの方法も十分に試してからじゃないと、
    大切なファイルがいなくなってしまうのが怖いところです。
    なので、これをこう。ってお伝えできる自信がなくすいません。

  • id:Sugriva
    コメントありがとうございます。
    質問をする前に robocopy を使ってみました。
    こんな感じです。

    net use Z: \\idisk.me.com\USERNAME /user:USERNAME "PASSWORD"
    robocopy "C:\ローカル" "Z:\リモート" /E /XO /XA:SH
    robocopy "Z:\リモート" "C:\ローカル" /E /XO /XA:SH

    一応、どの条件でもファイルの削除は行われず、
    常に新しいほうのファイルで上書きされるという動作ができたっぽいのですが、
    間違っていたら怖いという点と、ほかに方法がたくさんあるだろうということで
    あえてコマンドという縛りを設けずに質問をしてみました。

    コマンドで実現する方法は別途質問をたててみます。
  • id:virtual
    MobileMeのiDiskの動作をよく知らないのですが、単にパソコン3台のフォルダ同士の同期なら単純にDropBoxじゃ駄目なんですか?
  • id:Sugriva
    virtual さんコメントありがとうございます。
    今回できれば iDisk でやりたいという事情があります。
    でも Dropbox か Sugarsync も視野に入れて考えてみます。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません