使用systemd服务运行python脚本时出现“ ImportError:没有名为*的模块”

时间:2019-07-18 02:02:10

标签: systemd autostart

我试图通过使用以下参数创建systemd服务在启动时自动运行python脚本:

[Unit]
Description=python_autostart
After=multi-user.target

[Service]
Type=simple
User=root
WorkingDirectory=/path/to/my/python/script/
ExecStart=/usr/bin/python main.py

[Install]
WantedBy=multi-user.target

当我重新启动systemd服务脚本(sudo systemctl restart python_autostart)时,出现以下错误:

python_autostart.service - python auto start service
  Loaded: loaded(/etc/systemd/system/python_autostart.service; enabled; vendor preset: enabled)
  Active: failed(Result: exit-code) since Thu 2019-07-18 08:36:28 WIB, 2s ago
  Process: 6710 ExecStart=/usr/bin/python main.py (code=exited, status=1/FAILURE) 
   Main PID: 6710 (code=exited, status=1/FAILURE)

<timestamp> user systemd[1]: Started python_autostart service.
<timestamp> user python[6710]: Traceback (most recent call last):
<timestamp> user python[6710]: File "main.py", line 10, in <module>
<timestamp> user python[6710]: import psutil
<timestamp> user python[6710]: ImportError: No module named psutil
<timestamp> user python[6710]: python_autostart.service: Main process exited, code=exited, status=1/FAILURE
<timestamp> user python[6710]: python_autostart.service: Failed with result 'exit-code'.

当我以root权限在目录中执行python main.py时,它工作正常,但是当我使用systemd服务运行此python脚本时,会发生上述错误。我已经安装了python模块psutil(否则我无法手动运行)

感谢任何建议/评论。

谢谢!

0 个答案:

没有答案