デーモンとして機能する単純な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ファイルが正しくありませんか?