systemd 啟動腳本不工作

systemd 啟動腳本不工作

我建立了一個 systemd 啟動腳本,它只是使用 start 或 stop args 呼叫 python 腳本。

[Unit]
Description=foo Backends
After=network.target remote-fs.target nss-lookup.target

[Service]
ExecStart=/opt/foo/scripts/init_backends.py start
ExecStop=/opt/foo/scripts/init_backends.py stop
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

請注意,從 shell 呼叫 /opt/foo/scripts/init_backends.py start 效果很好

答案1

當使用以下設定時它開始工作。我認為 StandardOutput=tty 是關鍵

[Unit]
Description=foo Backends
After=network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
ExecStart=/opt/foo/scripts/init_backends.py start
ExecStop=/opt/foo/scripts/init_backends.py stop
User=root
Group=root
TimeoutSec=300
StandardOutput=tty
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

相關內容