Tidak perlu membuat atau mengedit file layanan. Cukup masukkan skrip Anda
/usr/lib/systemd/system-shutdown/
https://www.freedesktop.org/software/systemd/man/systemd-halt.service.html
Segera sebelum menjalankan sistem sebenarnya halt/poweroff/reboot/kexec systemd-shutdown akan menjalankan semua executable di /usr/lib/systemd/system-shutdown/ dan memberikan satu argumen kepada mereka:baik "berhenti", "poweroff", "reboot " atau "kexec", tergantung pada tindakan yang dipilih. Semua executable dalam direktori ini dijalankan secara paralel, dan eksekusi tindakan tidak dilanjutkan sebelum semua executable selesai.
Saya menggunakannya untuk membunyikan speaker PC.
Saya mengerti!
Ambil solusi Proses yang berjalan lama dengan StopExec dan modifikasi seperti ini:
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
Perhatikan baris:
RequiresMountsFor=/mnt/BACKUP /home
Cara ini berfungsi seperti yang diharapkan.