Raspbianで起動時処理を簡単に実装する
私、めんどくさいのが大嫌いなので、超簡単に起動時処理を実装します。
ほとんどの記事ではlocal.rcで実装してたんですが、rootで実行されるのとうまくいかなかったので今回はcronで実装します。
raspi-configの設定
まずは、ネットが接続されるまで処理を待つ設定をします。
(これをしないと正常に動作しないときがあるみたい)
sudo raspi-config
を入力
Boot Optionsを選択
Wait for Network at Bootを選択
はいを選択
了解を選択
これでOK
crontabのログ設定
実行されているか確認するために、ログが残るよう設定しましょう。
sudo nano /etc/rsyslog.conf
でファイルを開き
#cron.* /var/log/cron.log
と書いてある行を見つけて、#を外します(コメントアウト)
cron.* /var/log/cron.log
あとはCtrl+Xを押して、保存するか聞かれるのでyを押す。
終わったらログの設定は完了です。
crontabの設定
crontabには@rebootという、起動時に処理されるトリガがあり、今回はこれを利用していきます。
raspbianには標準で備わっているので、利用していきましょう。
crontab -e
で編集します。
初回はどのエディタを使うか確認されます。nanoでよければEnterを、他がよければ数字で選択してください。
(私はnano使いなのでそのままEnter)
そしたら、nanoが起動して編集可能になるので、一番下に@reboot [実行したいコマンド]
を追記してください。
今回はVNCサーバーが起動時に立ち上がるようにしたかったので、@reboot vncserver -localhost no
を追記しました。
そしたら保存して、crontab -l
で今入力した内容があるかを確認してください。
再起動
再起動して実行されていればOK。
実行されていなかった場合
しっかりcrontabが動いているかはログで確認できます。
sudo cat /var/log/cron.log
を確認して、エラーだったり、入力したコマンドがないようでしたら検索してみてください。
こんな感じで簡単に実装できました。やったぜ。