17
24

More than 5 years have passed since last update.

ラズパイ起動時にスクリプトを実行したい

Last updated at Posted at 2019-02-04

毎日定期的にラズパイを再起動させ、起動時に動かしたいシェルスクリプトがあったとする。

シェルスクリプトの中身はこんな感じ

bot.sh
echo "スタート"

node /home/pi/dev/bot.js

方法1. Cron

Crontabで再起動後にスクリプトを起動するよう設定する。

cronを設定

crontab -e

起動日時を指定

毎日9時に実行する書き方

00 9 * * * sh /home/pi/bot.sh

cronの確認

crontab -l

動作確認

cronのログをみたときに
vim /var/log/cron.log
起動してるようだが、rootユーザーで動作してないようで、正常にスクリプトが動作しなかった。

crontabではrootユーザーでは動かせない?

方法2. rc.local

スクリプトを/usr/local/bin/へ移動

bot.shというスクリプトを /usr/local/bin/ へ移動させる。

$ sudo mv ./bot.sh /usr/local/bin/

/etc/rc.localに起動したいスクリプトを指定

/etc/rc.local をvimで開く
sudo vim /etc/rc.local

exit 0の前にbot.shを追加した。
(パスは書かなくても動いた)

/etc/rc.local
bot.sh

exit 0

動作確認

結果はOK

ラズパイ再起動させて起動を待った結果、無事にスクリプトが動いていました。

参考にしたリンク

Cron

rc.local

17
24
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
24