Quantcast
Aktuelles
Digital Eliteboard - Das Digitale Technik Forum

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Registriere dich noch heute kostenlos, um Mitglied zu werden! Sobald du angemeldet bist, kannst du auf unserer Seite aktiv teilnehmen, indem du deine eigenen Themen und Beiträge erstellst und dich über deinen eigenen Posteingang mit anderen Mitgliedern unterhalten kannst! Zudem bekommst du Zutritt zu Bereichen, welche für Gäste verwehrt bleiben

Cron + watchdog einrichten, 7020HD und Newnigma

AW: Cron + watchdog einrichten, 7020HD und Newnigma

Ich frage direkt im Log nach, ob da was mit ( mein Beispiel ) "timeout" drinsteht.
Das erscheint, wenn die Karte nicht antwortet.

Das erste Script prüft nur, ob oscam läuft, nicht, ob es auch "arbeitet".
 
AW: Cron + watchdog einrichten, 7020HD und Newnigma

Werde ich morgen mal ausprobieren, nachdem ich meins getestet habe.

Wäre das für mich angepasst dann so in Ordnung?

#!/bin/sh
if grep -w -n timeout /tmp/oscam.log
then killall -9 /usr/bin/oscam
wait 50
# echo "reboot oscam"
/usr/bin/oscam
# else echo "good"
fi

Wäre nicht eine Kombination aus beiden Scripten noch besser? Das eine prüft, ob in der log timeout steht, das andere prüft, ob es noch läuft?


Edit:
Ich konnte es gerade mal testen. Da ich nicht weiß wie ich mit der FB Oscam stoppen kann, bin ich über telnet gegangen.
killall -9 oscam -> Bild weg und oscam in ps auch nicht mehr drin.

Leider hat das Script Oscam nicht neu gestartet, sondern mir nur wieder den Text ausgegeben. Komisch...

root@dm7020hd:~# sh /usr/script/watchoscam.sh
Oscam working

Ne Idee, was ich noch probieren könnte?
 
Zuletzt bearbeitet:
AW: Cron + watchdog einrichten, 7020HD und Newnigma

Macht der WD nur, wenn noch was von oscam zu sehen ist.
Oder die Schleife geht nicht.
Habe das 2. Script auf meiner Dream auch, läuft problemlos.

Per FB: blaue Taste - CI-Softcam, dort Common Interface wählen und speichern.
Damit ist oscam aus dem Rennen und der WD müßte das neu starten.
 
AW: Cron + watchdog einrichten, 7020HD und Newnigma

Ich hab jetzt beide Scipte nochmal getestet. Und noch mit beiden Probleme.

1.
#!/bin/sh
if ps -e |grep -v grep |grep -c oscam >/dev/null
then echo "Oscam working"
else /usr/bin/oscam -b
fi

Dieses Script startet Oscam nicht neu, es gibt nur "Oscam working" aus, obwohl Oscam vorher mit killall beendet worden is und nicht arbeitet.
Wo liegt der Fehler?

2.
#!/bin/sh
if grep -w -n timeout /tmp/oscam.log
then killall -9 /usr/bin/oscam
wait 50
# echo "reboot oscam"
/usr/bin/oscam
# else echo "good"
fi

Bei diesem Script bekomme ich folgende Fehlermeldung:

root@dm7020hd:~# sh /usr/script/watchoscam.sh
grep: invalid option -- 'w'
BusyBox v1.15.3 (2011-10-05 23:02:41 UTC) multi-call binary

Usage: grep [-HhrilLnqvsoeFEABC] PATTERN [FILE]...

Search for PATTERN in each FILE or standard input

Options:
-H Prefix output lines with filename where match was found
-h Suppress the prefixing filename on output
-r Recurse subdirectories
-i Ignore case distinctions
-l List names of files that match
-L List names of files that do not match
-n Print line number with output lines
-q Quiet. Return 0 if PATTERN is found, 1 otherwise
-v Select non-matching lines
-s Suppress file open/read error messages
-c Only print count of matching lines
-o Show only the part of a line that matches PATTERN
-m MAX Match up to MAX times per file
-F PATTERN is a set of newline-separated strings
-E PATTERN is an extended regular expression
-e PTRN Pattern to match
-f FILE Read pattern from file
-A Print NUM lines of trailing context
-B Print NUM lines of leading context
-C Print NUM lines of output context

Anscheinend mag er diese -w nicht. Was soll ich sattdessen nehmen, um den Sinn des Scriptes zu erfüllen?
Was ich jedoch komisch finde, dass dies bei dir funktioniert, aber hier nicht. Andere Version?

3. Sache

Da ich Newnigma nutze, bekomme ich bei der blauen Taste nicht das hier angezeigt:
Per FB: blaue Taste - CI-Softcam, dort Common Interface wählen und speichern.
Damit ist oscam aus dem Rennen und der WD müßte das neu starten.

Ne Idee, wie ich einen timeout Ausfall bei Newnigma generieren kann?

Fragen über Fragen, vielen Dank für eure Hilfe!
 
AW: Cron + watchdog einrichten, 7020HD und Newnigma

Timeout per Karte ziehen schon probiert?
Habe das experimental OE2.0 von DMM mit GP³ drauf.
Da geht die Abfrage mit dem -w.
Das mit dem -n erlaubt, genau die Zeile ( mit Datum etc. ) zu lokalisieren.
Macht sich bei großem Log-File einfacher.

BusyBox v1.15.3 (2011-10-05 23:02:41 UTC)
Etwas alt, der Kernel im NN2?

Das ist von meiner Dream: BusyBox v1.19.4 ( 2013-01-15 20:33:00 UTC )


Auszug:
OptionErläuterung
-iignoriert Groß/Kleinschreibung
-wDas gesuchte Wort muss alleine stehen. z.B. Wir suchen "test", dann würde mit -w "tester" nicht gefunden werden.
-nGibt die Zeilennummer aus, auf der der Ausdruck gefunden wurde.
-lWenn du in mehreren Dateien suchst, dann gibt -l nur die Dateinamen an in denen der Ausdruck gefunden wurde.
-xDer Ausdruck muss der gesamten Zeile entsprechen, z.b. du suchst das Wort "test", wenn nun in einer Zeile "test 123 frau" steht, dann würde diese Zeile nicht ausgegeben werden, da test nicht alleine steht.
-eErlaubt komplizierte RegEx's mit grep zu nutzen
 
Zuletzt bearbeitet:
AW: Cron + watchdog einrichten, 7020HD und Newnigma

Code:
#!/bin/sh
# global variables
MAXLOGLINES=100
LOGFILE=/tmp/oscam.check


### get time
# function to get the correct system time in an indivudual format when called - output: yyyy-mm-dd@hh:mm:ss
now () {
date +%Y-%m-%d@%H:%M:%S
}


### logfile check
# function: if number of lines in logfile >= $MAXLOGLINES then move logfile
logfile_check () {
if [ $(wc -l $LOGFILE | awk '{print $1}') -ge $MAXLOGLINES ] ; then
  mv -f $LOGFILE $LOGFILE.old
  echo "$(now) - last $MAXLOGLINES lines of $LOGFILE moved to $LOGFILE.old" > $LOGFILE
fi
}

# if logfile exists, check number of lines with above function - if not: skip
[ -e $LOGFILE ] && logfile_check


### oscam check
# if result of "ps aux ...." = 0, oscam ist NOT running, else running
if [ $(ps aux | grep -v grep | grep -c "/usr/bin/oscam") = 0 ] ; then
  echo "$(now) - oscam not running - restarting oscam" >> $LOGFILE
  # alternative: write status in both files
  # echo "$(now) - oscam not running - restarting oscam" >> /tmp/oscam.restarts
  # echo "$(now) - oscam not running - restarting oscam" > /tmp/oscam.status
  # /usr/bin/oscam &
  # may be better, because all oscam /tmp files created on start from NN2 start/stop script will cleaned/deleted:
  /usr/script/oscam.emu restart
  # or 'camdctrl restart' if oscam only is used
else
  echo "$(now) - oscam is running ">> $LOGFILE
  # alternative
  # echo "$(now) - oscam is running " >  /tmp/oscam.status
fi

exit
 
Zuletzt bearbeitet von einem Moderator:
AW: Cron + watchdog einrichten, 7020HD und Newnigma

@mxer:

Da scheint bei meinem Newnigma 3.3.2 ne alte Busybox Version drauf zu sein. Ob ich die einzeln updaten kann, weiß ich nicht.

@hwmmc:

Ich habe dein Script mal probiert und folgende Fehlermeldung bekommen:

root@dm7020hd:~# sh /usr/script/watchoscam.sh
: not found/watchoscam.sh: line 5:
: not found/watchoscam.sh: line 6:
2013-04-14@15:26:22
: not found/watchoscam.sh: line 11: }
: not found/watchoscam.sh: line 12:
: not found/watchoscam.sh: line 13:
/usr/script/watchoscam.sh: line 44: syntax error: unexpected end of file ing "then")

Nachdem ich die ganzen Kommentare mal entfernt habe und echo direkt hinter else geschrieben habe, war der Fehler immer noch da.

So langsam verzweifel ich an dem Script. :(
 
AW: Cron + watchdog einrichten, 7020HD und Newnigma

Die Busybox kann nicht einfach ausgetauscht werden, geht nur über neuflashen des Images.
Muß aber ein Image mit neuerer Busybox sein, sonst treten wir auf der Stelle.
 
AW: Cron + watchdog einrichten, 7020HD und Newnigma

Ich hatte bis jetzt einmal einen Absturz von Oscam, seit dem lasse ich das immer um 4:00 neu starten.
Diesen Neustart wollte ich am liebsten mit einem watchdog ersetzen.

Sonst bin ich super zufrieden mit der box und dem image und möchte aktuell kein neues aufspielen.

Hat denn keiner im Forum das selbe Problem wie ich mit Newnigma?
 
AW: Cron + watchdog einrichten, 7020HD und Newnigma

root@dm7020hd:~# sh /usr/script/watchoscam.sh
: not found/watchoscam.sh: line 5:
: not found/watchoscam.sh: line 6:
2013-04-14@15:26:22
: not found/watchoscam.sh: line 11: }
: not found/watchoscam.sh: line 12:
: not found/watchoscam.sh: line 13:
/usr/script/watchoscam.sh: line 44: syntax error: unexpected end of file ing "then")
Dann machst du etwas verlehrt! Das Script geht bei mit einwand frei mit Newnigma2 3.3.2.
Ich habe nur das oscam.emu Script parallel als oscam.sh im Script Ordner nochmal
und im Watchdog Script in Zeile 36 sreht es dann so /usr/script/oscam.sh restart drin.
Starte das Script mal mit Cron und setze die Rechte auf 755 der Scripte.
... z.B. die Zeilen 5 und 6 sind Leerzeilen (Platzhalter).
Oder teste es so im Telnet ... ...:~# /usr/script/watchoscam.sh

Und Zeilenumbruch nach exit nicht vergessen!
 
AW: Cron + watchdog einrichten, 7020HD und Newnigma

Ich wüsste auch gerne, was ich verkehrt mache...

Ich habe die Rechte auf 755 und es im Script Ordner liegen. Es wird per Telnet gestartet und es kommt der aufgeführte Fehler.
Zum bearbeiten nutze ich Notepad++.
 
AW: Cron + watchdog einrichten, 7020HD und Newnigma

Hast Du die gleiche Version NN2 wie hwmmc?
 
AW: Cron + watchdog einrichten, 7020HD und Newnigma

Leider ja. Sonst könnte man es darauf schieben... :(
 
Zurück
Oben