系统关闭时未调用systemd脚本

时间:2018-12-07 18:56:08

标签: linux systemd

我有一个systemd脚本,如果我直接调用它或如果通过systemd调用,则该脚本可以正常工作:

systemctl停止XXX.service

但是重新启动或关闭系统后,脚本无法运行。

这是systemd脚本:

[Unit]
Description=Run Scripts at Start and Stop
After=syslog.target network.target

[Service]
Type=oneshot
User=root
Group=root
RemainAfterExit=true
ExecStart=/usr/bin/echo start
ExecStop=/usr/bin/killall -u xxx
ExecStopPost=/bbb/stop_back.sh
TimeoutStopSec=5min 35s

[Install]
WantedBy=multi-user.target

1 个答案:

答案 0 :(得分:0)

添加“ Requires”行似乎是使其正常工作的关键。

[Unit]
Description=Run Scripts at Start and Stop
Requires=syslog.target network.target
After=syslog.target network.target

[Service]
Type=oneshot
User=root
Group=root
RemainAfterExit=true
ExecStart=/usr/bin/echo start
ExecStop=/usr/bin/killall -u xxx
ExecStopPost=/bbb/stop_back.sh
TimeoutStopSec=5min 35s

[安装] WantedBy = multi-user.target