* der Raspberry Pi hat einen in hardware implementierten Watchdog Wird die Datei /dev/watchdog geöffnet, dann erwartet der Watchdog aller x Sekunden (per Default sind es 14) einen Schreibzugriff auf die Datei -> einen Wert vom Watchdog-Dienst als Nachweis das das Betriebssystem noch läuft. \\ Bleibt das Schreiben aus, wird der Raspberry Pi neugestartet. ====== Schritte ====== * aktivieren der des Hardware-Watchdog in der Konfiguration des Raspberry Pi * installieren und konfigurieren eines Watchdog-Dienstes * laden des Kernel-Moduls/übergeben von Parametern an den Kernel ====== Aktivieren des Hardware-Watchdogs ====== * editieren von /boot/config.txt * hinzufügen des folgend Parameters: dtparam=watchdog=on * danach Raspberry Pi neustarten ====== installieren und konfigurieren eines Watchdog-Dienstes ====== * ein Dienst muss die Aufgabe übernehme /dev/watchdog zu öffnen und in regelmäßigen Abständen in die Datei zu schreiben um zu verhindern das der raspberry pi neustartet * theoretisch kann systemd die Aufgabe übernehmen * watchdog installieren * Datei /etc/watchdog editieren * folgende Parameter sollen gesetzt werden ^Parameter ^Wert ^ | watchdog-device | /dev/watchdog | | interval | * Intervall auf einen Wert kleiner * es muss mindestens einmal in 14 Sekunden (größt möglicher Wert den man konfigurieren kann im Raspberry Pi als Hearbeat) in die Datei /dev/watchdog geschrieben werden * empfehlenswert ist eventuell mehrfach innerhalb von 14 Sekunden schreiben zu lassen um Probleme durch Verzögerung durch hohe CPU-Last auszuschließen | |realtime|yes \\ Markiert den Speicher des Dienstes als nicht auslagerbar (kann nicht in den swap verschoben werden). \\ Das verhindert, dass im Falle das der Speicher knapp wird der Prozess in den Swap ausgelagert wird und das zurückladen in den Arbeitsspeicher eventuell zu lange dauert um rechtzeitig nach /dev/watchdog zu schreiben | |priority|1 \\ Setzt die Prozesspriorität, ein kleiner Wert ist hier von Vorteil, damit der Prozess bei der Ausführung Vorrang hat, auch wenn das System ausgelastet ist| ====== Fragen und Antworten ====== ===== Wenn der Boot-Prozess zu länger als 14 Sekunden dauert ===== Was passier wenn der Boot-Prozess länger als 14 Sekunden dauert, gibt es dann keine Endlosschleife? \\ \\ Nein, der Watchdog startet erst wenn die Datei /dev/watchdog geöffnet wurde, folglich erst wenn der Dienst startet.