systemd unterstützt dies bereits standardmäßig und ist standardmäßig aktiviert.
Das einzige, was Sie vielleicht anpassen möchten, ist das Timeout, das Sie mit TimeoutStopSec=
tun können . Zum Beispiel:
[Service]
TimeoutStopSec=2
Jetzt sendet systemd ein SIGTERM, wartet zwei Sekunden, bis der Dienst beendet wird, und wenn dies nicht der Fall ist, sendet es ein SIGKILL.
Wenn Ihr Dienst nicht systemd-fähig ist, müssen Sie möglicherweise den Pfad zu seiner PID-Datei mit PIDFile=
angeben .
Schließlich haben Sie erwähnt, dass Ihr Daemon viele Prozesse hervorbringt. In diesem Fall möchten Sie vielleicht KillMode=control-group
einstellen und systemd sendet Signale an alle Prozesse in der Kontrollgruppe.