У меня есть простой скрипт Python, работающий в качестве демона. Я пытаюсь создать сценарий systemd, чтобы иметь возможность запустить этот сценарий во время запуска.
Текущий сценарий systemd:
[Unit]
Description=Text
After=syslog.target
[Service]
Type=forking
User=node
Group=node
WorkingDirectory=/home/node/Node/
PIDFile=/var/run/zebra.pid
ExecStart=/home/node/Node/node.py
[Install]
WantedBy=multi-user.target
node.py:
if __name__ == '__main__':
with daemon.DaemonContext():
check = Node()
check.run()
run
содержит while True
цикл.
Я пытаюсь запустить этот сервис с помощью systemctl start zebra-node.service
. К сожалению, сервис никогда не заканчивал указывать последовательность - я должен нажать Ctrl + C. Скрипт запущен, но статус активируется и через некоторое время меняется на деактивирующий. Сейчас я использую python-daemon (но прежде чем я пытался без него, и симптомы были похожи).
Должен ли я реализовать некоторые дополнительные функции в моем скрипте или файл systemd неверен?