WOL beim booten der DBOX senden

Das Original Benutzerinterface Neutrino-SD incl. zapit, sectionsd, yWeb etc...
hasimodo_
Neugieriger
Neugieriger
Beiträge: 11
Registriert: Sonntag 26. September 2004, 22:11

WOL beim booten der DBOX senden

Beitrag von hasimodo_ »

Hallo,
ich möchte gerne von der DBOX auf einen Eisfair-NFS-Server aufnehmen. Wo muss ich bei der Box Etherwake aufrufen, so das bei jedem Bootvorgang der Box der Server mithochfährt?
In welchem Script kann ich den Aufruf dranhängen? Idealerweise sollte das WOL möglichst frühzeitig während des Bootvorgangs gesendet werden damit der Server auch online ist wenn die Box aufnehmen will...
Der Server soll dann ständig die Box anpingen. Ist diese nicht mehr erreichbar fährt er runter.
Dann könnte ich auch meine MP3's auf den Eisfair legen und einfach nur die Box einschalten zum Musikhören...
Zur Zeit nehme ich auf Dboxwinserver auf. Mit meinem Windowsrechner funktionert auch das WOL.Da ich den Eisfair noch nicht aufgesetzt hab werde ich erstmal probieren meinen Windows-PC per WOL beim Bootvorgang zu wecken. Wenn das geht probier ich die Sache mit dem Eisfair...

Ciao Markus
MajorK
Einsteiger
Einsteiger
Beiträge: 328
Registriert: Freitag 9. Mai 2003, 09:55

Re: WOL beim booten der DBOX senden

Beitrag von MajorK »

hasimodo_ hat geschrieben:In welchem Script kann ich den Aufruf dranhängen?
/var/tuxbox/start_neutrino (start_enigma)
Idealerweise sollte das WOL möglichst frühzeitig während des Bootvorgangs gesendet werden ...
dann muss Du nach dem WOL eine entsprechende Pause einbauen (sleep).

Was mir aber noch fehlt, ist das binden von WOL an einen Timer. Also das WOL nur dann ausgeführt wird, wenn die Box per Timer hochfährt (zur Aufnahme).

Cheers,
Major K.
DrStoned
Tuxboxer
Tuxboxer
Beiträge: 2614
Registriert: Montag 20. Mai 2002, 10:49
Image: JTG-Image [IDE] Version 2.4.4
Image: (7025SS) Merlin

Beitrag von DrStoned »

Schau mal bei http://www.jackthegrabber.de/viewtopic.php?t=4273 und http://www.jackthegrabber.de/viewtopic.php?t=4389 nach, da habe ich ne Anleitung reingestellt. Du musst Dich vorher in dem Forum anmelden. http://www.jackthegrabber.de
Wenn Du ganze automatisiert haben willst, mußt Du das ganze in die start_neutrino eintragen. Ich poste hier mal meine geänderte start_neutrino.

Code: Alles auswählen

#!/bin/sh
#eingefügt von DrStoned

ping -c 2 192.168.000.3 #prüfen ob PC ein, hier IP des PC eintragen 

if [ $? -eq 1 ]; then
/bin/etherwake 00:00:00:00:00:00 #PC aufwecken, hier muß die MAC der Netzwerkkarte rein
  echo""
  echo""
  echo""
  echo""
  i=50 #Zeitverzoegerung, bis der PC hochgelaufen ist
 while expr $i != 0 > /dev/null; do echo "  Bitte warten, der Stream-PC und Neutrino werden in $i Sekunden gestartet !!"
  if > /dev/null; then echo ""
  else break;
 fi
  i=`expr $i - 1`
  sleep 1
  clear
  echo""
  echo""
  echo""
  echo""
 done
else break;
fi;
#bis hier
if [ ! -e /var/etc/.cdkVcInfo ] ; then
 /bin/cdkVcInfo Neutrino
else
 /bin/cdkVcInfo -novc Neutrino
fi;
clear
if [ -x /var/tuxbox/config/tuxcal/reminder ] ; then 
 /bin/sh /var/tuxbox/config/tuxcal/reminder -n & 
else 
 if [ -e /var/tuxbox/config/tuxcal/reminder ]; then 
  chmod +x /var/tuxbox/config/tuxcal/reminder 
  /bin/sh /var/tuxbox/config/tuxcal/reminder -n & 
 fi; 
fi;
/bin/sectionsd
/bin/timerd
/bin/zapit -u
if [ -x /var/bin/camd2 ]; then
 /var/bin/camd2
else
 if [ -e /var/bin/camd2 ]; then
  chmod +x /var/bin/camd2
  /var/bin/camd2
 else
  /bin/camd2
 fi;
fi;
/bin/controld
/bin/nhttpd
/bin/neutrino -u -f

pzapit -kill

i=5
while expr $i != 0 > /dev/null; do
 if pidof controld > /dev/null; then echo "Waiting for controld (max. $i seconds)"
 elif pidof timerd > /dev/null; then echo "Waiting for timerd (max. $i seconds)"
 elif pidof zapit > /dev/null; then echo "Waiting for zapit (max. $i seconds)"
 else break;
 fi
 i=`expr $i - 1`
 sleep 1
done
sleep 1
#eingefuegt von DrStoned
/bin/cat /var/plugins/rscript | /bin/nc -i 1 192.168.0.3 23 & #PC ausschalten
sleep 5
#bis hier
echo "Going to halt system now ..."

sleep 1
/sbin/halt

exit 0 
Das mit der Zeitverzögerung ist drin, damit die Laufwerke auch gemountet werden. Die Echoanzeigen blenden die Zeit ein, bis Neutrino gestartet wird, dazu unter Einstellungen->diverse Einstellungen die Bootkonsole auf Framebuffer stellen und Infos beim Booten anzeigen auf ein.. Ist leider nur ein mieser Workarround, da es leider noch keine Möglichkeit gibt, den PC durch ein Script bei einer Timeraufnahme zu wecken. :cry: :cry: :cry:

Greetz von DrStoned :lol: :lol: :lol:
hasimodo_
Neugieriger
Neugieriger
Beiträge: 11
Registriert: Sonntag 26. September 2004, 22:11

Beitrag von hasimodo_ »

Super :-)
Vielen Dank @DrStoned&MajorK!
Ich werd's heute mal ausprobieren

Ciao Markus
hasimodo_
Neugieriger
Neugieriger
Beiträge: 11
Registriert: Sonntag 26. September 2004, 22:11

Beitrag von hasimodo_ »

So, ich hab folgende Datei gefunden:
/etc/init.d/start_neutrino
Aber ich kann die Datei nicht per FTP überschreiben.Wenn ich das richtig verstehe gehts deswegen nicht weil die Datei ja bei laufender Box gerade abgearbeitet wird. Und wenn die Box nicht läuft kann ich nicht per FTP ran .... :gruebel: Geht das wenn ich im Bootmenu Wartung wähle?
Ich hab die start_neutrino geändert, sollte das so testweise funkionieren?
#!/bin/sh
# $Id: start_neutrino,v 1.4 2004/06/30 18:25:08 essu Exp $
# test
etherwake 00:50:8D:4C:23:41 #PC aufwecken
sectionsd
timerd
if [ -e /var/bin/camd2 ]; then
chmod +x /var/bin/camd2
/var/bin/camd2
else
/bin/camd2
fi;

if [ -e /var/etc/.pmt_update ] ; then
zapit -u
else
zapit
fi;

controld
nhttpd
neutrino -u -f

pzapit -kill

i=9
while expr $i != 0 > /dev/null
do
if pidof controld > /dev/null; then echo "Waiting for controld (max. $i seconds)"
elif pidof timerd > /dev/null; then echo "Waiting for timerd (max. $i seconds)"
elif pidof zapit > /dev/null; then echo "Waiting for zapit (max. $i seconds)"
else break;
fi
i=`expr $i - 1`
sleep 1
done
halt
essu
Tuxboxer
Tuxboxer
Beiträge: 2452
Registriert: Montag 21. Oktober 2002, 10:04

Beitrag von essu »

Schon gelesen ???
ENIGMA-DOC
DrStoned
Tuxboxer
Tuxboxer
Beiträge: 2614
Registriert: Montag 20. Mai 2002, 10:49
Image: JTG-Image [IDE] Version 2.4.4
Image: (7025SS) Merlin

Beitrag von DrStoned »

@hasimodo_

Mach mal folgendes:
gehe mit nem FTP-Programm auf die Box, hier wechseln in Verzeichnis /var/tuxbox/. Dann den Symlink start_neutrino in start_neutrino_alt umbenennen. Danach kopierst Du Deine geänderte start_neutrino in dieses Verzeichnis. Danach Box neustarten und vielleicht freuen, wenn der PC dann gestartet wird. :) :D :lol: :P

P.S.: ändere die Zeile etherwake.... in /bin/etherwake....

Greetz von DrStoned :lol: :lol: :lol:
Greetz von DrStoned :lol: :lol: :lol:
hasimodo_
Neugieriger
Neugieriger
Beiträge: 11
Registriert: Sonntag 26. September 2004, 22:11

Beitrag von hasimodo_ »

Danke,
hat funktioniert. :D Jetzt werd ich mich mal um einen PC für den Eisfair kümmern....
hasimodo_
Neugieriger
Neugieriger
Beiträge: 11
Registriert: Sonntag 26. September 2004, 22:11

Beitrag von hasimodo_ »

Gibt's beim Bootvorgang der Box noch eine frühere Möglichkeit als die start_neutrino um Etherwake auszuführen?
---
Ciao Markus