Warum druckt systemd "Looping zu schnell" und was ist zu tun?

8

Ich verwende einen Server (VPS) mit Debian 8.3 (Jessie) und systemd verwaltet verschiedene Prozesse. Die Auslastung des Systems liegt unter 1, verwendet jedoch fast den gesamten Speicher und einen Teil des Swap-Speicherplatzes. Wenn ich versuche, einen Dienst zu stoppen und einzutreten

systemctl stop process@1

Die Protokolldatei sagt

Mar  1 08:03:50 abcde systemd[1]: Looping too fast. Throttling execution a little.

Diese Meldung erscheint jede Sekunde und es passiert nichts mehr. Wenn ich ^Can das Terminal sende , wird der Prozess endgültig gestoppt. Das gleiche passiert, wenn ich versuche, einen Daemon neu zu starten. Systemd hat die Version: 215-17 + deb8u3

Warum wird diese Meldung angezeigt und was kann ich tun, um einen Daemon ohne diese Meldung herunterzufahren?

qbi
quelle

Antworten:

3

Gemäß diesem Problem mit systemd auf github liegt das Problem möglicherweise bei dbus, und ein Upgrade von systemd wird empfohlen, da die mit Debian 8 (Version 215) gelieferte Version ab Juli 2015 als alt gilt.

Sie können versuchen, den Server neu zu starten, da dies das Problem für einige andere behoben hat, bei denen dieses Problem aufgetreten ist (obwohl dies offensichtlich nur eine Problemumgehung ist). Es gibt auch einige andere Korrekturen / Problemumgehungen in dem Bericht, die ich aufgelistet habe und die möglicherweise in Ihrer Situation zutreffen.


Aktualisieren:

Laut diesem Thread auf bugs.debian.org sollten die Korrekturen hierfür in der 215-17+deb8u5Version des systemdPakets verfügbar sein . Ein Upgrade auf diese Version sollte Ihr Problem lösen.

jkt123
quelle
2

Ich hatte ein ähnliches Problem.

systemctl daemon-reexec

hat es aufgeräumt. Ich habe versucht, die Ausgabe von zu vergleichen

systemctl --all

vor und nach dem reexec. Was ich vor dem Reexec sehe, ist eine große Anzahl von Zeilen wie:

session-1046.scope       loaded inactive dead   start Session 1046 of user root
session-1047.scope       loaded inactive dead   start Session 1047 of user root
session-1048.scope       loaded inactive dead   start Session 1048 of user root
session-1049.scope       loaded inactive dead   start Session 1049 of user myuser
session-1050.scope       loaded inactive dead   start Session 1050 of user root
session-1051.scope       loaded inactive dead   start Session 1051 of user root
session-1052.scope       loaded inactive dead   start Session 1052 of user myuser

Diese alle verschwanden nach der erneuten Ausführung. Ich glaube, sie haben etwas mit der Ausführung zu tun:

ssh root@myserver
ssh myuser@myserver

Über mehrere Wochen seit dem letzten Neustart.

Ich könnte den systemctl-Eintrag im "laufenden Zustand" reproduzieren, indem ich mich als root (oder myuser) anmelde. Wenn ich das Fenster jedoch ordnungsgemäß verlasse oder beende, verschwindet der Eintrag. Ich gehe davon aus, dass das Verlassen des Logins irgendwann hängen bleibt und die systemD-Sitzung hinterlässt. Ich bin mir nicht sicher, ob diese irgendetwas mit der Schleife von systemD zu tun haben.

DavidG
quelle
0

Das bedeutet, dass systemd versucht, einen Dienst zu starten, der sofort abstürzt (oder normal beendet wird). Der Versuch, es neu zu starten, führt zum selben, also zur Meldung. Überprüfen Sie, ob eine Konfiguration falsch ist / fehlt, einige Dateien nicht am erwarteten Ort gefunden wurden / falsche Berechtigungen, ...

vonbrand
quelle
1
Ich versuche, einen Dienst zu beenden , wenn die Nachricht eingeht und die Arbeit erledigt ist, wenn ich ^ C drücke. Die Konfiguration ist korrekt. Ich habe es noch einmal überprüft.
Qbi