我正在尝试在Linux机器上同时作为系统服务同时运行python脚本。按照以下链接(Radtek的python示例)中的说明进行操作,但遇到错误。
我在这里错过了什么吗?
https://serverfault.com/questions/730239/start-n-processes-with-one-systemd-service-file
我的代码和步骤如下:
1。 worker @ .service:
[Unit]
Description=manages my worker service, instance %i
After=multi-user.target
[Service]
PermissionsStartOnly=true
Type=idle
User=root
ExecStart=/absolute_path/test_python.py
Restart=always
TimeoutStartSec=10
RestartSec=10
2。 /absolute_path/test_python.py:
#!/usr/bin/python3
import os
import time
def main():
while True:
print ('Started test python process: {0}'.format(os.getpid()))
time.sleep(30)
if __name__=='__main':
main()
已启用2个工人: sudo systemctl启用worker @ {1..2} .service
sudo systemctl守护进程重新加载
sudo systemctl start worker @ {1..2}
sudo systemctl status worker @ 1
●worker@1.service-管理我的工人服务,实例1 已加载:已加载(/etc/systemd/system/worker@.service;静态;供应商预设:已禁用) 活动:自美国东部时间2020-03-24 16:27:59开始失败(结果:退出代码); 2h 53min前 主PID:11244(代码=已退出,状态= 203 / EXEC)
3月24日16:27:59服务器名systemd [1]:启动了“工人实例#1”。 3月24日16:27:59 servername systemd [1]:正在启动“工人实例#1” ... 3月24日16:27:59服务器名systemd [1]:worker@1.service:主进程已退出,代码=已退出,状态= 203 / EXEC 3月24日16:27:59服务器名systemd [1]:单元worker@1.service进入失败状态。 3月24日16:27:59服务器名systemd [1]:worker@1.service失败。