X

Neutrino restart bei Fehler

Einklappen
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • BPanther
    Erfahrener Benutzer
    • 25.03.2008
    • 9279

    Neutrino restart bei Fehler

    Da mich das immer geärgert hat, daß die ganze Box immer komplett neu gestartet hat, nur weil Neutrino durch einen internen Fehler abgestürzt ist (also sich beendet hat) habe ich die rcS etwas umgeschrieben, hier aus Rev105/tdt1967:

    rcS Original (nur der Teil)
    Code:
       echo "LOADING neutrino" > /dev/vfd
       echo "LOADING neutrino"
    
       until false
       do
          echo "starting neutrino ->"
          /usr/local/bin/neutrino
          rtv=$?
          echo "neutrino ended <- RTV: " $rtv
          case "$rtv" in
    		0) echo "0"
    		   echo "Box restart"
          		   reboot;;
    		1) echo "1"
    		   echo "SHUTDOWN"
    		   case "$var" in
    			0) fp_control -e
                               umount -a;;
      			1|3) fp_control -e #please check if this works for ufs910 14W
                                 echo "0" > /proc/progress
    		             showiframe -p /boot/bootlogo.mvi &;;
    		   esac;;           
    		*) echo "*"
    		   echo "Unexpected error"
                       reboot;;
          esac
       done 
    fi
    rcS NEU (nur der Teil)
    Code:
       echo "LADE Neutrino" > /dev/vfd
       echo "LADE Neutrino"
    
       until neutrino
       do
          echo "Starte Neutrino ->"
          /usr/local/bin/neutrino
          rtv=$?
          echo "neutrino ended <- RTV: " $rtv
          case "$rtv" in
    		0) echo "0"
    		   echo "Box Neustart" > /dev/vfd
    		   echo "Box Neustart"
          		   reboot;;
    		1) echo "1"
    		   echo "Box abschalten" > /dev/vfd
    		   echo "Box abschalten"
    		   case "$var" in
    			0) fp_control -e
                               umount -a;;
      			1|3) fp_control -e #please check if this works for ufs910 14W
                                 echo "0" > /proc/progress
    		             showiframe -p /boot/bootlogo.mvi &;;
    		   esac;;           
    		*) echo "*"
    		   echo "- FEHLER $rtv -" > /dev/vfd
    		   echo "- FEHLER $rtv -"
    		   sleep 5;;
          esac
       done 
    fi
    Damit startet lediglich Neutrino neu und nicht die ganze Box. Der Fehlercode wird dabei im VFD kurz angezeigt.
    Ein killall neutrino in Telnet führt aber dennoch zum Neustart, da dabei der Fehlercode 0 (normaler Restart) von Neutrino zurückgegeben wird. Benutzt man hingegen killall -9 neutrino (das wäre mit "brachialer Gewalt" beenden), gibts Fehler 137 und lediglich Neutrino startet neu.
    MfG BPanther - neutrino.mbremer.de
  • BPanther
    Erfahrener Benutzer
    • 25.03.2008
    • 9279

    #2
    VFD-Helligkeit / Reboot-Problem

    Und noch etwas für die rcS.

    VFD-Helligkeit

    Will man die VFD-Helligkeit ändern, was ja leider unter Neutrino noch nicht funktioniert - auch ext. Programme wie fp_control oder vfdctl funktionieren nicht, da Neutrino das gesamte VFD blockiert - dann trage man noch folgendes, am besten in die Neutrino-Schleife mit ein:

    Code:
       until neutrino
       do
          echo "Starte Neutrino ->"
          /usr/local/bin/neutrino
          rtv=$?
          echo "neutrino ended <- RTV: " $rtv
          case "$rtv" in
    ändern in:

    Code:
       until neutrino
       do
          if [ -e "/usr/local/share/config/neutrino.conf" ]; then
                VFDBrightness=$(grep -i "lcd_brightness=" /usr/local/share/config/neutrino.conf | cut -d "=" -f 2)
                /bin/fp_control -b $VFDBrightness
          fi
          echo "Starte Neutrino ->"
          /usr/local/bin/neutrino
          rtv=$?
          echo "neutrino ended <- RTV: " $rtv
          case "$rtv" in
    Leider funktioniert das erst nach einem Neustart der Box oder nach einem Neutrino-Absturz. Ein Neustart von Neutrino reicht nicht, da Neutrino dabei nicht beendet wird.


    Box Neustart

    In manchen GIT's klappt der Reboot der Box nicht, selbst in Telnet passiert bei reboot nichts. Abhilfe schafft hier ein Parameter -f . Auch diesen Befehl kann man in die rcS nachtragen, falls der normale reboot versagt:


    Code:
          case "$rtv" in
    		0) echo "0"
    		   echo "Box Neustart" > /dev/vfd
    		   echo "Box Neustart"
          		   reboot;;

    ändern in:
    Code:
          case "$rtv" in
    		0) echo "0"
    		   echo "Box Neustart" > /dev/vfd
    		   echo "Box Neustart"
          		   reboot
          		   sleep 3
    		   echo "Erzwinge  REBOOT" > /dev/vfd
          		   reboot -f;;
    MfG BPanther - neutrino.mbremer.de

    Kommentar

    Nicht konfiguriertes PHP-Modul

    Einklappen

    Neutrino restart bei Fehler

    Einklappen
    Lädt...
    X