Über Watchdog den Raspberry Pi neu Starten wen die Lanverbindug nicht mehr steht.

Begonnen von Olaf A, 06 Januar 2013, 19:24:42

Vorheriges Thema - Nächstes Thema

Olaf A

Hallo Ihr,

Ich habe das Problem, dass mein Raspberry sich alle paar Tage bis hin zu Stunden aufhängt.
Nun ist mein Englisch nicht das Beste. In Netz habe ich gesehen, dass FHEM über einen watchdog verfügt.
Ich Stelle mir das so vor, dass der watchdog alle 5 min nachschaut, ob er über das Netzwerk eine Datei im Router findet.
Wenn diese nicht der Fall ist soll er den Raspberry neu Starten.

define <name> watchdog <regexp1> <timespec> <regexp2> <command>

Ich habe aber keine Ahnung wie ich das in diese Zeilen bekomme.
Kann mir da jemand Helfen?

Mit freundlichen Grüßen

Olaf Andresen
FHEM auf CubieTruck:
Max mit Cube, HMLAN; MAX-Thermostaten; Homematic-Komponenten, SIS PM Schalter, JeeLink.

Olaf A

Ergänzung:

An stelle der Datei im Router kann natürlich auch nachgeschaut werden ob Google noch da ist. :-)

Gruß Olaf
FHEM auf CubieTruck:
Max mit Cube, HMLAN; MAX-Thermostaten; Homematic-Komponenten, SIS PM Schalter, JeeLink.

Olaf A

Hallo Ihr,

nach dem ich mich jetzt durch diverse Foren gesucht habe, habe ich jetzt die .cfg Datei gefunden, die im Raspberry vorhanden ist.
Kann mir noch mal jemand helfen bevor ich wieder meinen Raspberry in eine Dauerschleife schicke.

Habe ich reingenommen:
ping
repair-binary
log-dir

max-load-1 war schon vorhanden.

Als Anlage habe ich die gesamte Datei angehängt.
Gruß Olaf

----------------------------------------------------------

watchdog.conf

ping         = 192.168.1.10   # Router
#ping         = 172.26.1.255
#interface      = eth0
#file         = /var/log/messages
#change         = 1407

# Uncomment to enable test. Setting one of these values to '0' disables it.
# These values will hopefully never reboot your machine during normal use
# (if your machine is really hung, the loadavg will go much higher than 25)
max-load-1      = 24
#max-load-5      = 18
#max-load-15      = 12

# Note that this is the number of pages!
# To get the real size, check how large the pagesize is on your machine.
#min-memory      = 1

repair-binary      = /usr/sbin/repair
#repair-timeout      =
#test-binary      =
#test-timeout      =

watchdog-device   = /dev/watchdog

# Defaults compiled into the binary
#temperature-device   =
#max-temperature   = 120

# Defaults compiled into the binary
#admin         = root
#interval      = 1
#logtick                = 1
log-dir      = /opt/fhem/log/watchdog

# This greatly decreases the chance that watchdog won't be scheduled before
# your machine is really loaded
realtime      = yes
priority      = 1

# Check if syslogd is still running by enabling the following line
#pidfile      = /var/run/syslogd.pid  

FHEM auf CubieTruck:
Max mit Cube, HMLAN; MAX-Thermostaten; Homematic-Komponenten, SIS PM Schalter, JeeLink.

Prof. Dr. Peter Henning

Sieht bei mir ähnlich aus, habe aber erst heute abend Zugriff auf meine Kiste.

Achtung: das ist nicht der Watchdog von FHEM - sondern der Hardware-Watchdog vom RPi. Der funktioniert bei mir bestens und bootet die Kiste neu, wenn das Netzwerk steht. Ist auch sinnvoll, denn z.B. kann ein FHEM-watchdog nach einem Absturz von FHEM gar nichts mehr ausrichten.

Ich bin noch nicht ganz zufrieden damit - denn abgesehen vom totalen Reboot kann man den RPi-watchdog auch Aktionen ausführen lassen wie:

- Neustart nur von FHEM
- Resetten entfernter CUNOs
- Reset des COC
- Neustart des USB-Systems

Alle drei benötige ich, habe nur noch nicht Zeit gefunden, ein komplexes Skript dafür zu schreiben.

LG

pah

UweH

Hallo,

ich habe den hier bei mir laufen und es funktioniert...: http://pi.gadgetoid.co.uk/post/001-who-watches-the-watcher

Andere Idee ist noch ein externer Hardware-Watchdog mit einem DS2413. Per Notify alle paar Minuten antriggern und der DS2413 wiederum startet einen externen Zeitschalter immer wieder, so dass die eingestellte Zeit nie abläuft. Wenn der RPi aussteigt, vergisst er das Triggern und der Zeitschalter resettet hart oder unterbricht kurz die Versorgungsspannung.

Schaltung dafür schwirrt schon im Kopf rum...

Prof. Dr. Peter Henning

Den habe ich auch. Einen externen Watchdog würde ich aber über den DS2417 realisieren.

LG

pah

UweH

Raffiniert...den hatte ich nicht auf dem Radar. Das muss ich mir wohl mal genauer ansehen... :)

Martin Haas

Habe heute festgestellt, dass sich die WLAN-Verbindung des EDIMAX-USB-WLAN nicht mehr selbst aufbaut, wenn die Fritzbox rebootet.

Da die RPI allerdings eine wichtige Rolle als NFC-Reader leisten soll, geht das gar nicht.

Nun prüft hier vorsichtshalber alle 10min ein cronjob auf der RPI, ob die Fritzbox noch erreichbar ist. Andernfalls wird das Netzwerk neu gestartet. Wer will kann auch anstatt dessen den Rechner rebooten. Anstatt ping gehen natürlich auch andere Kriterien.


########## /usr/local/bin/rpi_network_chk.sh

#!/bin/bash

# Restartet das Netzwerk, wenn kein Ping mehr auf die Fritzbox möglich
# Hintergrund: Raspberry PI hat das WLAN nach Fritzboxausfall nicht mehr aufgebaut (Ursache nicht gesucht)

FritzBox='192.168.0.254'

  /bin/ping -c1 $FritzBox
  pingtest=$?
  if [[ $pingtest == 0 ]]
  then
        {
        echo "WLAN ok"  
        echo "kein /etc/init.d/networking restart"
        }
  else
        {
        echo "WLAN nicht ok"
        /etc/init.d/networking restart
        }
  fi



Die Datei muss ausführbar sein.
chmod +x /usr/local/bin/rpi_network_chk.sh

Der Eintrag in der /etc/crontab sieht so aus:

######### /etc/crontab

...
*/10 * * * * root /usr/local/bin/rpi_network_chk.sh >>/dev/null 2>&1
...

Criz

Zitat von: Olaf Andresen schrieb am Mo, 07 Januar 2013 19:29Hallo Ihr,


----------------------------------------------------------

watchdog.conf

ping         = 192.168.1.10   # Router


Ich habe watchdog .conf genau wie oben beschrieben angepasst.
Wenn ich den Ping hinzu nehme, bootet der Raspi ständig neu.
Habe natürlich die ip meines Routers genommen.

Martin Haas

Laut
http://www.megaleecher.net/Watchdog_for_Raspberry_Pi
funktioniert ping im watchdog nicht (ich nutze Wachdog nicht).

NOTE : It is advisable to backup your SD card before trying watchdog timer as your Pi might get into an endless reboot loop if not done properly. Also, the ping feature seems not to work and results in endless reboots on start, one reason could be unavailability of network when watchdog tries the ping and fails which makes the Pi reboot.

==> um den reboot wieder loszuwerden, die Karte im PC mounten und im einfachsten Fall einfach /etc/watchdog.conf umbenennen. Wie man es dreht und wendet, irgendwie sollte man sich mit Linux auseinandersetzen. Insofern halte ich hier watchdog überhaupt für etwas übertrieben -- aber jeder wie er will.

Prof. Dr. Peter Henning

Der Einsatz des watchdog ist sicher nicht übertrieben. Der bootet nämlich - weil unabhängige Hardware ! - den Raspberry auch dann, wenn das Linux-System sich ins Nirwana verabschiedet hat. Das kann man selbst ausprobieren, indem man eine Forkbombe loslässt - dazu einfach :(){ :|:& };: in eine Shell eintippen (aber bitte nur, wenn man sich mit Linux auskennt...)

LG

pah

Criz

Wenn ich den ping nicht nehmen kann,was dann?


Wenn ichs mir recht überlege, ist der Einsatz von watchdog auch nicht die Lösung, denn ich würde nur einen reboot erzwingen, wenn der Fehler auftritt. Am liebsten würde ich die Ursache des Fehlers beseitigen.

smsc95xx 1-1.1:1.0: eth0: Failed to write register index 0x00000014
smsc95xx 1-1.1:1.0: eth0: Failed to write HW_CFG_LRST_ bit in HW_CFG register, r$

Dr. Boris Neubert

Zitat von: Criz schrieb am Sa, 19 Januar 2013 15:33Wenn ichs mir recht überlege, ist der Einsatz von watchdog auch nicht die Lösung, denn ich würde nur einen reboot erzwingen, wenn der Fehler auftritt. Am liebsten würde ich die Ursache des Fehlers beseitigen.

Hast Du schon mit rpi-update den neuesten Kernel auf den Raspi gebracht?

Grüße
Boris
Globaler Moderator, Developer, aktives Mitglied des FHEM e.V. (Marketing, Verwaltung)
Bitte keine unaufgeforderten privaten Nachrichten!

Prof. Dr. Peter Henning


Criz

Zitat von: Prof. Dr. Peter Henning schrieb am Sa, 19 Januar 2013 15:41Hier mehr zu diesem Problem - auf Deutsch.

http://raspberrycenter.de/forum/raspberry-haengt-sich-immer-wieder

Bitte mal die Datei /boot/cmdline.txt posten.

LG

pah

DEn Link habe ich beim Googlen auch gefunden.

cmdline.txt sagt folgendes:
dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait


Prof. Dr. Peter Henning

Dann schlage ich vor, in die /boot/cmdline.txt einzufügen:

dwc_otg.fiq_fix_enable=0

LG

pah

Olaf A

Hallo Ihr,

ich habe mich ne zeit lang mal zurückgehalten, da ich vor einigen Tagen das rpi-update durchgeführt habe.
Was soll ich sagen seid dem habe ich keinen Absturz mehr gehabt.

Hallo Chris jupp das selbe Problem hatte ich auch bei, jedes mal wenn ich den Hund eingesetz habe.
Ich habe bis heute keine Lösung gefunden.

Gruss Olaf
FHEM auf CubieTruck:
Max mit Cube, HMLAN; MAX-Thermostaten; Homematic-Komponenten, SIS PM Schalter, JeeLink.

Criz

Zitat von: Dr. Boris Neubert schrieb am Sa, 19 Januar 2013 15:40
Zitat von: Criz schrieb am Sa, 19 Januar 2013 15:33Wenn ichs mir recht überlege, ist der Einsatz von watchdog auch nicht die Lösung, denn ich würde nur einen reboot erzwingen, wenn der Fehler auftritt. Am liebsten würde ich die Ursache des Fehlers beseitigen.

Hast Du schon mit rpi-update den neuesten Kernel auf den Raspi gebracht?

Grüße
Boris

Ich will den Tag nicht vor dem Abend loben, aber seit dem rpi-update, läuft die Kiste schon drei Tage durch.
*aufholzklopf*

Danke für eure Hilfe
Tolles Forum

Markus M.

Ich habe keinen meiner beiden Raspberries mit Raspbian zum Durchlaufen bekommen und auch 3 verschiedene Netzteile durchprobiert. Scheint am FTDI zu liegen.
Erst ein Wechsel auf ARCH hat den erhofften Erfolg gebracht.

Hier ist übrigens noch eine schöne Anleitung um den Watchdog auch ohne große Linux-Kenntnisse zu installieren:
http://cameriworkbench.blogspot.de/2013/01/auto-reboot-hung-raspberry-pi-using-on.html
FHEM dev + HomeBridge + Lenovo Flex15 + HM-CFG-USB + RFXtrx433 + Fritz!Box 7590/7580/546E

HM Aktor/Sensor/Winmatic/Keymatic/Thermostat, HUE, Netatmo Weather/Security/Heating, Xiaomi AirPurifier/Vacuum, Withings Aura/BPM/Cardio/Go/Pulse/Thermo, VSX828, Harmony, Siro ERB15LE
https://paypal.me/mm0