systemctl enable実行時にNo such file or directoryになる

公開日時
更新日時

先日の焦電センサとHueを使って部屋の照明を自動ON/OFFするスクリプトもsystemdで自動起動するように設定した。

その際にserviceファイルをシンボリックリンクにしたところ、systemctl enable実行時にNo such file or directoryになるエラーに遭遇したので対応方法を残しておく。

  • pythonファイルに実行権限を付与
chmod +x /home/pi/hue/light.py
  • serviceファイルを/etc/systemd/system以外に作成
# /home/pi/hue/hue.service
[Unit]
Description = hue light

[Service]
WorkingDirectory=/home/pi/hue/
ExecStart=/home/pi/hue/light.py
Type=simple
Restart=always
EnvironmentFile=/etc/sysconfig/root

[Install]
WantedBy=multi-user.target
  • シンボリックリンクを作成
sudo ln -s /home/pi/hue/hue.service /etc/systemd/system/hue.service
  • 設定再読み込み
sudo systemctl daemon-reload
  • systemctl start, status等は問題なく実行できるがenableを実行するとNo such file or directoryエラーになる
sudo systemctl enable hue.service
Failed to execute operation: No such file or directory
  • 絶対パスを指定することで解決できた
sudo systemctl enable /home/pi/hue/hue.service

参考


Related #raspberry pi