Besitze ich einen Wachhund?

11

Sehr oft erhalte ich beim Neustart die folgende Fehlermeldung:

kernel: watchdog watchdog0: watchdog did not stop!

Ich habe versucht, mehr über Watchdog herauszufinden man watchdog, aber es steht keine manuelle Eingabe. Ich habe versucht yum list watchdogund festgestellt, dass es nicht installiert war. Wenn ich mir das /devVerzeichnis anschaue , habe ich tatsächlich zwei Wachhunde gefunden:

watchdog und watchdog0

Ich bin neugierig. Besitze ich tatsächlich Wachhunde? Warum beschwert sich der Kernel, dass er beim Neustart nicht gestoppt wurde?

Fragenüberlauf
quelle

Antworten:

7

Die meisten modernen PC-Geräte verfügen über Watchdog-Timer. Sie können hier mehr über Wikipedia lesen: Watchdog Timers . Auch aus den Linux-Kernel-Dokumenten:

Auszug - https://www.kernel.org/doc/Documentation/watchdog/watchdog-api.txt

Ein Watchdog-Timer (WDT) ist eine Hardwareschaltung, die das Computersystem im Falle eines Softwarefehlers zurücksetzen kann. Das wussten Sie wahrscheinlich schon.

Normalerweise benachrichtigt ein Userspace-Daemon den Kernel-Watchdog-Treiber über die spezielle Gerätedatei / dev / watchdog in regelmäßigen Abständen darüber, dass der Userspace noch aktiv ist. Wenn eine solche Benachrichtigung auftritt, teilt der Treiber dem Hardware-Watchdog normalerweise mit, dass alles in Ordnung ist und dass der Watchdog noch eine Weile warten sollte, um das System zurückzusetzen. Wenn der Benutzerbereich fehlschlägt (RAM-Fehler, Kernel-Fehler usw.), werden die Benachrichtigungen nicht mehr angezeigt, und der Hardware-Watchdog setzt das System nach dem Timeout zurück (was einen Neustart verursacht).

Die Linux-Watchdog-API ist eine eher Ad-hoc-Konstruktion, und verschiedene Treiber implementieren unterschiedliche und manchmal inkompatible Teile davon. Diese Datei ist ein Versuch, die vorhandene Verwendung zu dokumentieren und zukünftigen Treiberschreibern die Verwendung als Referenz zu ermöglichen.

Diese SO-Frage & Antwort mit dem Titel: Wer aktualisiert den Hardware-Watchdog unter Linux? , deckt die Verknüpfung zwischen dem Linux-Kernel und dem Hardware-Watchdog-Timer ab.

Was ist mit dem Watchdog-Paket?

Die Beschreibung im RPM macht dies ziemlich klar, IMO. Der watchdogDaemon kann entweder als Software-Watchdog fungieren oder mit der Hardware-Implementierung interagieren.

Auszug aus der RPM-Beschreibung

Das Watchdog-Programm kann als leistungsstarker Software-Watchdog-Daemon oder alternativ mit einem Hardware-Watchdog-Gerät wie der IPMI-Hardware-Watchdog-Treiberschnittstelle zu einem residenten Baseboard Management Controller (BMC) verwendet werden. watchdog schreibt regelmäßig in / dev / watchdog; Das Intervall zwischen den Schreibvorgängen in / dev / watchdog kann über die Einstellungen in der Datei watchdog sysconfig konfiguriert werden.

Diese Konfigurationsdatei wird auch verwendet, um den Watchdog als Hardware-Watchdog anstelle seiner Standard-Software-Watchdog-Operation festzulegen. In beiden Fällen löst der Ablauf des Watchdog-Timers einen Neustart des Computers aus, wenn das Gerät geöffnet ist, aber nicht innerhalb des konfigurierten Zeitraums beschrieben wurde. Wenn Sie als Software-Watchdog arbeiten, hängt die Fähigkeit zum Neustart vom Status des Computers und von Interrupts ab.

Wenn Sie als Hardware-Watchdog arbeiten, wird auf dem Computer ein Hard-Reset (oder eine Aktion, die nach Ablauf des Watchdog-Timers konfiguriert wurde) vom BMC ausgelöst.

slm
quelle
Danke, das Kernel-Dokument ist nützlich. Bedeutet dies zur Verdeutlichung, dass der Kernel einen Watchdog besitzt und der Benutzer, ich, keinen besitzt, da ich keinen installiert habe?
Frage Überlauf
1
@QuestionOverflow - Soweit ich weiß, bietet das System die Watchdog-Funktion (im Wesentlichen Hardware). Der Kernel besitzt es daher und verwaltet diese Hardware wie jede andere Hardware im System. Sie als Benutzer interagieren über den Kernel damit, besitzen es jedoch nicht in offizieller Funktion. Du bist einfach ein Verbraucher davon. WDTs werden als integrierter Schutz verwendet, falls durch Ausführen von Software die Hardware auf unvorhergesehene Weise gebunden wird. Sie sind ein Sicherheitsmechanismus, der es dem System ermöglicht, sich zu erholen.
slm
Ich verstehe. Aber es scheint, dass ich direkt damit interagieren kann, wenn ich Watchdog installiere. Es scheint eine Konfigurationsdatei /etc/watchdog.confzu geben, die ihr Verhalten direkt ändert.
Frage Überlauf
@QuestionOverflow - Sehen Sie sich die Watchdog-Beschreibung im RPM an. Es erklärt alles. Ich werde es meinem A. hinzufügen
slm