空飛ぶロボットのつくりかた

ロボットをつくるために必要な技術をまとめます。ロボットの未来についても考えたりします。

systemdで処理を自動起動してみる

やりたいこと

PCを起動するときにいくつかの処理を自動起動にする

手順

注意

GUIなどを立ち上げたりエラーが出続けている場合は、正しい挙動にならないので、要注意!

その際は$ journalctl -b | lessなどでlogをチェック!!

シェルスクリプトの作成

boot_all.sh

#!/bin/sh

pass="pass"
echo $pass | sudo /home/nvidia/jetson_clocks.sh
cd '/home/nvidia/src'
/home/nvidia/openpose/bin/python /home/nvidia/src/track_face.py

systemdにservice用スクリプトを作る

  • cd /etc/systemd/system

  • emacs -nw test.service

[Unit]
Description = test service

[Service]
ExecStart = /home/nvidia/boot_all.sh
Restart = always
Type = simple

[Install]
WantedBy = multi-user.target

自動起動にserviceを登録

  • sudo systemctl enable test

disable で解除

確認

  • sudo systemctl start test

  • sudo systemctl status test

参考