Motionを時間指定で実行したい時のためにメモを残します。
要件
毎日8:00~19:00の間でMotionを実行したい
※将来的には平日のみ起動させたいが今は保留
用意したもの
Raspberry Pi 3 Model B
cron
Motion(インストール済)
手順
1. Motion開始(終了)コマンドが書かれたバッチファイルを作成する
Motion開始コマンド用ファイルの作成
sudo touch MotionStart.sh
sudo vim MotionStart.sh
Motionサービスを開始するプログラムを書きます。
MotionStart.sh
sudo Motion
Motion終了コマンド用ファイルの作成
sudo touch MotionEnd.sh
sudo vim MotionEnd.sh
Motionサービスを停止させるプログラムを書きます。
MotionEnd.sh
sudo service motion stop
2. cronのログが出力されるようにする
sudo vim /etc/rsyslog.conf
該当行のコメントアウトを外します。
# cron.* /var/log/cron.log
↓
cron.* /var/log/cron.log
保存をしたらログ管理システムを再起動します
sudo /etc/init.d/rsyslog restart
3. cronに登録する
crontab以下のコードを追加します。
crontab -e
# 毎日8時にプログラムを実行
00 8 * * * sh /home/pi/MotionStart.sh
# 毎日19時にプログラムを実行
00 19 * * * sh /home/pi/MotionEnd.sh
スケジュールされているか下記のコードで確認します。
crontab -l
スケジュールが動いているかはログを見ることで確認できます。
sudo cat /var/log/cron.log