如何在重启/关机时运行脚本

如何在重启/关机时运行脚本

我正在使用 Kubuntu 18.04。我想在计算机重启或关闭时运行一个脚本。我之前在 Kubuntu 14.04 中使用过相同的脚本,但现在,在 18.04 中,我想我需要通过 systemd 来处理它。
这是我到目前为止尝试过的方法:
我已注释掉脚本的内容,以echo "called" > /home/backup确保它已被调用,
并像这样创建了符号链接/etc/rc0.d
root:/etc/rc0.d# ll | grep quick lrwxrwxrwx 1 root root 22 čec 1 16:46 K99quick-backup -> ../init.d/quick-backup 我试过 K99 和 K01,但都没有用,
我将其添加到脚本的开头(虽然在 14.04 中没有它也能正常工作):

### BEGIN INIT INFO
# Provides:          my-service-name
# Required-Start:    $all
# Required-Stop:
# Default-Start:     0 6
# Default-Stop:
# Short-Description: your description here
### END INIT INFO

我可以通过调用手动运行脚本/etc/rc0.d/K99quick-backup,因此我可以/etc/init.d/quick-backup
使用 systemd来运行它

root:/etc/systemd/system# cat /etc/systemd/system/qbackup.service 
[Unit]
Description=Quick backup of settings
DefaultDependencies=no
Before=shutdown.target reboot.target halt.target

[Service]
Type=oneshot
RemainAfterExit=true
ExecStart=/bin/true
ExecStop=/root/test.sh

[Install]
WantedBy=halt.target reboot.target shutdown.target


进而
systemctl enable qbackup.service ; systemctl daemon-reload

这是我重启后得到的结果:
ystemctl status qbackup.service

● qbackup.service - Quick backup of settings
   Loaded: loaded (/etc/systemd/system/qbackup.service; enabled; vendor preset: enabled)
   Active: inactive (dead)

有人能帮我吗?或者只是建议如何为运行级别 0 和 6 自动执行单个 bash 脚本的简单方法谢谢

相关内容