StartLimitIntervalSec=
wurde als Teil von systemd v230 hinzugefügt. In systemd v229 und darunter können Sie nur StartLimitInterval=
verwenden . Sie müssen auch StartLimitInterval=
eingeben und StartLimitBurst=
im [Service]
Abschnitt - nicht der [Unit]
Abschnitt.
Um Ihre systemd-Version auf CentOS zu überprüfen, führen Sie rpm -q systemd
aus .
Wenn Sie jemals auf systemd v230 oder höher aktualisieren, werden die alten Namen in der Datei [Service]
wird weiterhin funktionieren.
Quelle:https://lists.freedesktop.org/archives/systemd-devel/2017-July/039255.html
Sie können dieses Problem haben, ohne überhaupt einen Fehler zu sehen, da systemd unbekannte Anweisungen ignoriert. systemd geht davon aus, dass viele neuere Direktiven ignoriert werden können und dennoch die Ausführung des Dienstes zulassen.
Es ist möglich, eine Unit-Datei manuell auf unbekannte Anweisungen zu überprüfen. Zumindest scheint es auf dem aktuellen systemd zu funktionieren:
$ systemd-analyze verify foo.service
/etc/systemd/system/foo.service:9: Unknown lvalue 'FancyNewOption' in section 'Service'
Ich glaube, ich habe das Problem gefunden. Das gesamte Dokument online schlägt vor, dass sich alle Parameter in der UNIT-Datei (systemd-Unit-Datei) befinden, aber in meinem System (centos 7.5) befinden sie sich immer noch in der Servicedatei. Außerdem ist der Name "StartLimitInterval", nicht "StartLimitIntervalSec".