趣味的なIT・ネットの話題

Raspberry PiでIoTなシステム開発:ローカルのnodeで開発したプロジェクトをrsyncでリモートに同期させる

Raspberry Piで動作させるNode.jsのプロジェクトをリモートで開発すると、いつでも環境を持ち歩かないと開発で着なくなります。そこでハードウェア固有の事項が絡む部分以外は、Mac上のNodeで開発をする事にしました。で、ある程度形になったのでRaspberry Piに転送しようと思うのですが、開発しながらリモートのファイルをいじることもあり得るので、SFTPでの上書き更新では無く、rsyncによる同期を試して見ることにします。参考にしたのはこちら。

rsync でディレクトリの同期(バックアップ) – maruko2 Note.

rsyncがデフォルトでsshに対応しているので、Raspberry Pi側にサーバを追加する必要が無いのがお手軽でよいです。遅いらしいですが、LAN有線なので気になりませんでした。

kawauchiyasuo-no-MacBook-Pro:~ yasuo$ rsync -av -e ssh kt/ pi@raspberrypi.local:/home/pi/kt
pi@raspberrypi.local's password: 
building file list ... done
./
.DS_Store
app.js
app.js.map
app.ts
colors.d.ts
course.js
(中略)
typings/main/ambient/
typings/main/ambient/node/
typings/main/ambient/node/index.d.ts
www/
www/.DS_Store
www/index.html

sent 492485 bytes  received 47852 bytes  72044.93 bytes/sec
total size is 4055183  speedup is 7.50

 

結構なファイル数を更新しても数秒でした。試しにファイル3つだけ更新して同期させると以下の通り。

kawauchiyasuo-no-MacBook-Pro:~ yasuo$ rsync -av -e ssh kt/ pi@raspberrypi.local:/home/pi/kt
pi@raspberrypi.local's password: 
building file list ... done
app.js
app.js.map
app.ts

sent 16119 bytes  received 194 bytes  4660.86 bytes/sec
total size is 4055202  speedup is 248.59

一瞬です。毎回パスワードの入力をしないといけないのが面倒ですね。このあたりはssh keyで対応できるのでしょう。

 

 


Facebooktwitterpinterestlinkedinmail
納得したらすぐにシェア!