systemd:如何在服务文件

时间:2015-11-21 17:17:34

标签: systemd

在我的守护进程停止之前,我需要调用另一个程序。

我的第一次尝试是使用与ExecStopPre类似的ExecStartPre,但根据https://bugs.freedesktop.org/show_bug.cgi?id=73177,这不受支持,我应该使用"多个ExecStop"。

有人为此得到了一个例子吗?我应该如何从ExecStop杀死守护进程?

1 个答案:

答案 0 :(得分:2)

您使用ExecStop(来自node.js服务)放置多行:例如

[Service]
ExecStartPre=/usr/local/bin/npm run build
ExecStartPre=-/bin/rm local.sock
ExecStart=/usr/local/bin/npm --parseable start 
ExecStop=/usr/local/bin/npm --parseable stop
ExecStop=-/bin/rm local.sock
RestartSec=300
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=nodejs
User=nobody
Group=nobody
Environment=NODE_ENV=dev
Environment=PORT=3000
WorkingDirectory=/var/www/nodejs/quaff
UMask=007