Windows でのファイルの同期には Unison を使ったりしているのだが双方向むけのものなので、目的によっては向かない事もある。
やっぱり rsync も使いたい。かといって Cygwin をインストールするのも面倒だし。
で探してみたところ cwRsync というのを発見。 これも Cygwin 上で動くものなのだが、rsync, ssh, ssh-keygen と cygwin1.dll 等必要最低限のDLL だけがパッケージされていて気軽にインストールできるようになっている。
exe 1個で済む Unison ほど扱いやすくはないが、Cygwin を1から入れるよりはずっと楽。
daemon-mode protocol: rsync -rv rsync://rsync.samba.org/ftp/unpacked/rsync/ . ローカル: rsync -rv /usr/local/aaa . ローカル(ドライブ指定): rsync -rv /cygdrive/c/usr/local/aaa . リモート: rsync -e ssh -v www.example.com:/home/naney/a.txt .
などの動作を確認。ファイル共有しているリモートファイルのUNCによる指定はうまくいかない(Cygwin ではどうやって指定する?)が、ネットワークドライブ割り当てをすればアクセスできる。
やはり Windows - Windows で Unison を使う事に未練がある。 リモートの Windows BOX で sshd をたてればなんとかなる?
Cygwin の中で必要なものだけを抜き出したパッケージ。 cwRsync と同じタイプ。
Windows XP Home Edition SP1 にインストーラでインストール後、説明どおり group と passwd を作成。 sshd をサービスとして開始する。 Internet Connection Firewall の設定を変更して22番ポートを開ける。
しかしなんか変なシェルで使いづらい。 またコマンドが実行に失敗してエラーモーダルダイアログが出る時は sshd が動いているPCの画面に表示される。SSHクライアント側からは知るよしもないし、ボタンを押すすべもない。
うーん。不便。
Naney (なにい) です。株式会社MIXIで SNS 事業の部長をしています。
※本サイトの内容は個人的見解であり所属組織とは関係ありません。