automatischer Neustart nach crash

Gast #5140938
Hi

Ich habe eine System mit Linux und Busybox auf einer Embedded Plattform 
und darauf läuft ein selbst geschriebenes Programm. Es startet mit Hilfe 
eines Initscripts automatisch hoch und kann mit /etc/init.d/test 
start/stop/restart/status gesteuert werden. Nun suche ich eine 
Möglichkeit sicherzustellen das das Programm neustartet wenn es einmal 
abstürzt?! Ich hatte zuerst die Idee einen Cron Job zu erstellen der in 
einen bestimmten Intervall den status abfragt und gegebenenfalls neu 
startet wenn das Programm gestoppt ist! Gebe es noch eine andere 
Möglichkeit dies zu realisieren oder gibt es schon ein Tool das dies 
kann?!

mfg Herbert
Gast
Eigentlich sollte dein Programm so gut sein, dass es nur abstürzt, wenn 
du sowieso der ganzen Rechner neu starten musst.

Ausserdem - dein Programm kann ja auch in einer Endlosschleife landen 
oder ewig auf eine Eingabe warten.

Normalerweise benutzt man den Hardware-Watchdog und den Watchdog Deamon. 
In der Konfiguration des Watchdogs trägst du dann z.B. ein, falls die 
Programm nicht alle 5 Minuten seine Logdatei aktualisiert, soll er den 
ganzen Rechner neu starten.
Herbert schrieb:
> darauf läuft ein selbst geschriebenes Programm.

Wenn man ein Programm selber schreibt, dann hat man es doch in der Hand, 
es so sorgfältig zu schreiben, daß es nicht abstürzt.
Du solltest also erstmal die Absturzursachen analysieren und 
korrigieren.
Du kannst ja im Programm eine Watchdogtimer aufsetzen, der bei einem 
Hänger Daten zur Analyse in ein Logfile schreibt.
Gast
> Flupp - in die Tonne.

Nehmen wir mal ein Beispiel:

Alle paar Monate gibt es eine Störung auf der USB Verbindung zu einer 
50€ Wetterstation. Mal hängt es sich auf, mal ist das Device 
verschwunden, manchmal legt Linux ein Device mit einem anderen Namen 
an... Es gibt keine Dokumentation, was alles passieren kann. Ein 
Profigerät mit RS485 kostet 2000€.

Was willst du du in die Tonne treten?

-Die 50€ Wetterstation?
-Das Linux?
-Die Linux USB Treiber?
-Die unvollständige Fehlerbehandlung?
-Die ganze Idee?

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 9 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.