Raspberry PiでIoTなIT:スタートアップ時にsystemdを使ってnodeを自動起動させる

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

headlessで運用するRapsberry Piのシステムを開発中です。基幹となるサービスがnodeで動くので、システム起動時に自動的に起動するように設定してみました。RaspbianがWheesyまでのときはinsservでよかったのですが、Jessieからはsystemdに変わっています。insservでも起動できるのは確認しているのですが、折角ですのでsystemdでの起動に挑戦してみます。

参考にしたのはこちら。

Systemdを使ってさくっと自作コマンドをサービス化してみる – Qiita

Node-RED.service

まずserviceファイルを書きます。

rootで起動するのがセキュリティ的に望ましくないことは分かってはいるのですが、システムレベル、ハードウェアレベルにアクセスしないといけない関係上、やむを得ずrootにしています。

保存したところ、systemctlコマンドで認識できました。

 

systemctlのstartからスタートでき、stopで停止できました。

enableするとよく分かりませんがどこかに登録されたようです。

再起動したところ、プロセスが走っていました。外部からこのnodeへのアクセスも成功しています。

以前のinitスクリプトを各方式よりも簡単でわかりやすいように感じました。serviceの記法も直感的でよいと思います。

 

 


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