Wie kann ich einen Systemd-Dienst so konfigurieren, dass er regelmäßig neu gestartet wird?
Habe ich eine einfache systemd-Dienst, muss in regelmäßigen Abständen neu gestartet, um das Prozess von nervt. Gibt es eine Konfigurations-option für die systemd-Dienste, um in regelmäßigen Abständen neu zu starten? Alle Restart*
- Optionen scheinen zu beziehen, um den Dienst neu zu starten, wenn es beendet wird.
InformationsquelleAutor der Frage wes | 2015-06-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ja, können Sie machen Sie Ihre service neu zu starten, es in regelmäßigen Abständen, indem Sie Ihre service
Type=notify
.Fügen Sie diese option auf [Service] Abschnitt Ihrer service-Datei zusammen mit
Restart=always
und gebenWatchdogSec=xx
", wobei xx für den Zeitraum in der Sekunde, die Sie wollen, starten Sie den Dienst neu. Hier wird Ihr Prozess wird getötet werden von systemd nach xx Zeit und neu gestartet wird durch systemd wieder.für zB.
InformationsquelleAutor der Antwort Saturn
Sah ich eine Lösung hier , schien elegant, wenn auch ein wenig Kreisverkehr. Die zentrale Idee ist die Schaffung eines one-shot-Dienst, ausgelöst durch einen timer, der startet anderen service.
Für den timer:
Für die one-shot-service:
Für die one-shot-Dienst auf Ubuntu 16.04 LTS:
Dieser Lösung können Sie nutzen systemd - Timer, einschließlich der Möglichkeit, den Dienst neu zu starten zu einem bestimmten Zeitpunkt des Tages, und nicht erst, wenn eine gewisse Zeit verstrichen ist.
InformationsquelleAutor der Antwort matmat
Nur einige Alternative Ansätze, um letztendlich zu erreichen das gleiche Ziel:
InformationsquelleAutor der Antwort Dan Cornilescu
Wie wäre es mit einem crontab wie
würde den Dienst neu starten yourService um 3:30 Uhr jeden Sonntag.
InformationsquelleAutor der Antwort Fritz Zaucker
Kann dies nicht vorhanden gewesen zu der Zeit Stand die Frage im Mittelpunkt, aber es gibt jetzt eine option namens
RuntimeMaxSec
, beendet den Dienst, nachdem es ausgeführt worden ist, für den angegebenen Zeitraum.z.B.
Dies erscheint mir eleganter als Missbrauch
Type=notify
undWatchdogSec
.InformationsquelleAutor der Antwort Alex Forbes