Není třeba vytvářet nebo upravovat soubory služeb. Jednoduše vložte svůj skript do
/usr/lib/systemd/system-shutdown/
https://www.freedesktop.org/software/systemd/man/systemd-halt.service.html
Bezprostředně před provedením samotného systému halt/poweroff/reboot/kexec systemd-shutdown spustí všechny spustitelné soubory v /usr/lib/systemd/system-shutdown/ a předá jim jeden argument:buď "halt", "poweroff", "reboot" " nebo "kexec", v závislosti na zvolené akci. Všechny spustitelné soubory v tomto adresáři jsou spouštěny paralelně a provádění akce nepokračuje, dokud nejsou dokončeny všechny spustitelné soubory.
Používám jej k jednoduchému pípnutí reproduktoru počítače.
Mám to!
Vezměte řešení Dlouho běžící proces s StopExec a upravte jej takto:
autobackup.service:
[Unit]
Description=Slow backup script
RequiresMountsFor=/mnt/BACKUP /home
[Service]
ExecStop=/etc/systemd/system/do_backup.sh
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
Všimněte si řádku:
RequiresMountsFor=/mnt/BACKUP /home
Funguje to podle očekávání tímto způsobem.