SystemD 安装程序找不到 Python?
SystemD Setup Can't Find Python?
我在 AWS EC2 上有一个 cronjob 运行,我通常通过 crontab 启动它:
0 */6 * * * sudo python3 /opt/homeDirectoryForMyApp/manage.py myCronJob --settings=server.settings.production
这按预期正常工作。现在我正尝试通过 SystemD 启动相同的作业。
myCronJob.service:
[Unit]
Description=myCronJob Service
Wants=myCronJob.timer
[Service]
ExecStart='/usr/bin/python3.7' manage.py myCronJob --settings=server.settings.production
WorkingDirectory=/opt/homeDirectoryForMyApps/
[Install]
WantedBy=multi-user.target
myCronJob.timer:
[Unit]
Description=launch myCronJob
Requires=myCronJob.service
[Timer]
Unit=myCronJob.service
OnCalendar=00/2:10
[Install]
WantedBy=rss.target
我在 journalctl 中得到这个(通过 journalctl -u myCronJob
):
Jan 02 22:45:03 ip-###-##-#-### systemd[3760]: myCronJob.service: Failed at step CHDIR spawning /usr/bin/python3.7: No such file or directory
但是 /usr/bin/python3.7
确实存在于该路径中:
ubuntu@ip-###-##-#-###:/etc/systemd/system$ cd /usr/bin
ubuntu@ip-###-##-#-###:/usr/bin$ ls python3.7
python3.7
我错过了什么?
您看到的错误是:
Failed at step CHDIR spawning /usr/bin/python3.7: No such file or directory
这表明问题实际上在于单元文件中的 WorkingDirectory
设置(step CHDIR
表示 "the error occurred when trying to change directory")。
您的单元文件中的 WorkingDirectory
路径可能有错字。
我在 AWS EC2 上有一个 cronjob 运行,我通常通过 crontab 启动它:
0 */6 * * * sudo python3 /opt/homeDirectoryForMyApp/manage.py myCronJob --settings=server.settings.production
这按预期正常工作。现在我正尝试通过 SystemD 启动相同的作业。
myCronJob.service:
[Unit]
Description=myCronJob Service
Wants=myCronJob.timer
[Service]
ExecStart='/usr/bin/python3.7' manage.py myCronJob --settings=server.settings.production
WorkingDirectory=/opt/homeDirectoryForMyApps/
[Install]
WantedBy=multi-user.target
myCronJob.timer:
[Unit]
Description=launch myCronJob
Requires=myCronJob.service
[Timer]
Unit=myCronJob.service
OnCalendar=00/2:10
[Install]
WantedBy=rss.target
我在 journalctl 中得到这个(通过 journalctl -u myCronJob
):
Jan 02 22:45:03 ip-###-##-#-### systemd[3760]: myCronJob.service: Failed at step CHDIR spawning /usr/bin/python3.7: No such file or directory
但是 /usr/bin/python3.7
确实存在于该路径中:
ubuntu@ip-###-##-#-###:/etc/systemd/system$ cd /usr/bin
ubuntu@ip-###-##-#-###:/usr/bin$ ls python3.7
python3.7
我错过了什么?
您看到的错误是:
Failed at step CHDIR spawning /usr/bin/python3.7: No such file or directory
这表明问题实际上在于单元文件中的 WorkingDirectory
设置(step CHDIR
表示 "the error occurred when trying to change directory")。
您的单元文件中的 WorkingDirectory
路径可能有错字。