Android 用 rsync とそのフロントエンド rsyncdroid を IS01, IS03 で使えるようにした。 rsync とオリジナルの rsyncdroid は http://code.google.com/p/rsyncdroid/ にある。
IS01, IS03 で使えるように rsyncdroid を修正する。
ソースコードを入手。
$ svn checkout http://rsyncdroid.googlecode.com/svn/trunk/ rsyncdroid-read-only
修正内容はこんなかんじ。
- rsync のパス変更
- su を使わないようにする変更
- ps コマンドの絶対パス指定 (busybox の ps があると動作しなくなるので)
- ポート番号の変更
- Android 1.6 の IS01 にインストールできるように SDK のバージョン設定を低く
Eclipse で編集して rsyncdroid-0.3_is.apk を生成した。
rsync と rsyncdroid を PC から IS01 に転送する。
$ wget http://adqmisc.googlecode.com/svn/trunk/androidutils/rsync/rsync-3.0.6-arm-softfloat-linux-gnueabi.gz $ zcat rsync-3.0.6-arm-softfloat-linux-gnueabi.gz > rsync $ adb push rsync /data/local/bin $ adb shell chmod 755 /data/local/bin/rsync $ adb push rsyncdroid-0.3_is.apk /sdcard
IS01 で rsyncdroid をインストールし、rsyncdroid を起動。テキストボックスに以下のように入力して start を押下すれば rsync が起動する。
uid = 0 gid = 0 read only = no use chroot = no port = 10873 [sdcard] path = /sdcard comment = SD Card [is01] path = /sdcard/Music
この設定は /sdcard/rsyncdroid/rsyncd.conf として保存される。
IS01 の IP アドレスが 192.168.1.3 とすると PC で以下のコマンドを実行すると IS01 の /sdcard/Music と PC の music/ を同期できる。
$ rsync -avz music/ rsync://192.168.1.3/is01 --port 10873