Я пытаюсь запустить сценарий python одновременно как службу systemd на компьютере Linux. Следовали инструкциям по ссылке ниже (пример 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 enable worker @ {1..2} .service
sudo systemctl daemon-reload
sudo systemctl start рабочий @ {1..2}
sudo systemctl status worker@1
● worker@1.service - управляет моей службой работника, экземпляр 1 загружен : загружено (/ etc / systemd / system / worker@.service; статично; предустановка поставщика: отключено) Активно: не удалось (Результат: код выхода) с вт 2020-03-24 16:27:59 EDT; 2 ч. 53 мин. Назад Главный PID: 11244 (код = выход, статус = 203 / EXE C)
24 марта, 16:27:59 servername systemd [1]: запущен «Рабочий экземпляр № 1». 24 марта, 16:27:59 servername systemd [1]: запуск «экземпляра Worker # 1» ... 24 марта, 16:27:59 servername systemd [1]: worker@1.service: выход из основного процесса, код = выход, статус = 203 / EXEC 24 марта 16:27:59 имя_сервера systemd [1]: устройство worker@1.service перешло в состояние отказа. 24 марта 16:27:59 имя_сервера systemd [1]: worker@1.service не удалось.