Seit ich unter Arch Linux auf systemd "aktualisiert" habe, verliere ich immer wieder Protokolle, wenn eine unerwartete Sperrung auftritt. Ich bin vor einem Monat auf dasselbe Problem mit dem Verlust von Protokollen gestoßen und habe das Problem einfach erneut festgestellt. Es gibt auch unabhängige andere Bestätigungen .
Situation:
- Während ich einige Dinge in Java und mit netzwerkbezogenen Dienstprogrammen erledigte, sah ich, dass KDE (die Uhr) eingefroren war. Der CPU-Lüfter wurde laut und die Hitze stieg. Der Mauszeiger konnte jedoch noch bewegt werden.
- Ich habe versucht, von einem anderen Computer aus zu ssh (fehlgeschlagen aufgrund "keine Route zum Host")
- Ich wartete ein paar Minuten, vielleicht konnte der NMI-Wachhund die beleidigende Aufgabe beenden. Kein Würfel.
- Ctrl+ Alt+ F1hat auch nach SysRq+ nicht funktioniertR
- Da die obigen Schritte nicht funktionierten, entschied ich mich, die SysRq-Sequenz REI auszugeben. Danach Ewurde der Bildschirm schwarz, aber auch keine Konsole. Nicht einmal nach SysRq+K
- Diese Sitzung scheint also verloren zu sein. Das einzige, was getan werden kann, ist das Sammeln von Debugging-Informationen. Als ich mir Wikipedia ansah , entschied ich mich unter anderem, SysRq+ d(Display gehaltene Sperren) zu drücken .
- Nach dem Drücken von SysRq+ habe Sich eine Sekunde gewartet und dann mit SysRq+ neu gestartet B.
- Nach dem Neustart und der Anmeldung an einer Konsole sah ich keine Spuren eines Absturzes. Der zuletzt protokollierte Eintrag stammte von Wireshark, es gab jedoch noch eine Lücke von 45 Minuten.
(Ich habe Linux v3.8-rc5-218-ga56e160 übrigens ausgeführt)
Wie kann ich also sicherstellen, dass meine Protokolle beim abnormalen Neustart aufgrund einer Blockierung beibehalten werden?
SyncIntervalSec
Option (unter anderem) beim Menschen journald.conf(5)
.
man jounrnald.conf(5)
: SyncIntervalSec = ... Beachten Sie, dass die Synchronisierung unbedingt erfolgt, unmittelbar nachdem eine Protokollnachricht mit der Priorität CRIT, ALERT oder EMERG protokolliert wurde. Diese Einstellung gilt daher nur für Meldungen der Stufen ERR, WARNING, NOTICE, INFO, DEBUG. Bedeutet dies nicht einfach, dass ein kritischer Fehler, der protokolliert wird, "sofort" synchronisiert werden soll, ohne auf das Intervall zu warten? Das heißt, wenn ein kritischer Fehler auftritt, sollten wir ihn in journald
Protokollen sehen. Vermisse ich etwas?!
systemd
oder nicht? Vor kurzem sehe ich ähnliche Probleme. Ich habe die Details hier gepostet -> unix.stackexchange.com/questions/414871/…