Saya ingin menjalankan beberapa skrip ketika layanan gagal. Hal terdekat yang saya lihat adalah FailureAction=
opsi (di bawah [Service]
bagian), tetapi hanya menawarkan perintah reboot.
11
Ada OnFailure=
arahan dalam bagian [Unit]
, didokumentasikan dalam systemd.unit (5) . Ini didefinisikan sebagai berikut:
Daftar yang dipisahkan oleh spasi dari satu atau lebih unit yang diaktifkan ketika unit ini memasuki kondisi "gagal".
(Juga ada OnFailureJobMode=
arahan di bagian yang sama yang memungkinkan untuk mengatur mode pekerjaan untuk mengaktifkan OnFailure = unit.)
/etc/systemd/system
dan letakkan namanya dalamOnFailure=
arahan.Anda juga dapat menggunakan
ExecStopPost
untuk menjalankan perintah secara langsung alih-alih memulai sebuah unit.Saya tidak senang dengan
OnFailure
pengaturan sehingga saya terus mencari dan menemukanExecStopPost
.Contoh nyata berikut, jika tugas utama gagal maka systemd akan menjalankan
git
perintah.https://www.freedesktop.org/software/systemd/man/systemd.service.html
sumber