自動実行するように設定しよう。
ひと通り動くようになったが、自分で実行するのは芸がないので、/home/pi/bbcrssnewsを自動的にOSに実行してもらおう。
まず、サービスとして自動実行するserviceを記述する。
/etc/systemd/system/bbcnews.serviceファイルを管理者権限で作成。
[Unit]
Description=mogemoge
After=network.target
[Service]
ExecStart=/home/pi/bbcrssnews
WorkingDirectory=/home/pi
User=pi
[Install]
WantedBy=multi-user.target
- [Unit]で「After=network.target」と記載すると、ネットワークにつながっているときに実行されるらしい。
- [Service]の項にもし「Restart=always」を記載すると、実行終了後即座にリスタートがかかり延々実行されてしまう。ワンショットで終わるようコメントアウトしておいた。
実行テスト。
sudo systemctl start bbcnews.service
で、ちゃんと実行されることを確認する。
おわったらstopしておく。
続いて、timer部分を記述する。
/etc/systemd/system/bbcnews.timerファイルを管理者権限で作成。*.serviceと同じファイルにするのが流儀ですってよ。
[Unit]
Description=hogehoge
After=network.target
[Timer]
OnCalendar=*-*-* *:15,45
[Install]
WantedBy=timers.target
[Timer]は、毎時15分、45分に開始するように設定した。
BBCのRSSから吐いたテキストを表示するのにザックリ10分ほどかかる。1時間に3-4回も表示しようものなら、うっとうしいのである。
こちらも実行テスト。
sudo systemctl start bbcnews.timer
でちゃんと実行することを確認出来たらstopし、
sudo systemctl enable bbcnews.timer
で自動実行を設定する。