0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ラズパイzeroでのPythonの自動起動(systemdを使用)

Posted at

 Raspberry Pi zeroにおいて,Pythonプログラムの自動起動で悩んだのでやり方を記録する.

serviceファイルの作成

 /etc/systemd/system/内でserviceファイルを作成する.

serviceファイルの作成
$ cd /etc/systemd/system/
$ sudo vim test.service

serviceファイルの内容

 下記のように記載した.User=Username Group=UsernameにはOSのユーザ名を記載した.After=network.targetにすることで,ラズパイがインターネットに接続された後に実行される.ExecStartは絶対パスで書くことに注意する.ただしWorkingDirectoryにディレクトリを指定することで,実行ファイル名は相対パスでも動作する.

serviceファイルの内容
[Unit]
Description=Test
After=network.target

[Service]
User=Username
Group=Username
Type=simple
WorkingDirectory=/home/pi
ExecStart=/usr/bin/python3 main.py

[Install]
WantedBy=multi-user.target

serviceファイルの動作確認

 以下のように実行することでserviceファイルが動作するかを検証できる.

serviceファイルの動作確認
$ sudo systemctl daemon-reload
$ sudo systemctl start test.service
$ sudo systemctl status test.service

serviceファイルの登録

 上の結果がエラーなくrunningになっていれば問題ない.以下のようにすることで起動時に自動的に実行されるようになる.

serviceファイルの登録
$ sudo systemctl enable test.service
解除は,enable -> disable

 上のように作業することでPythonプログラムを自動的に実行できるようになった.

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?