[gelöst] Linkstation Auto Mode

  • Hallo,


    habe im Netz ein Skript gefunden womit ich meine Buffalo Linkstation im Auto-Mode durch die Dreambox starten kann.


    Hab aber absolut keinen Plan, wie ich das Skript in die Dreambox einfügen kann.


    In Sachen Python absoluter neuling...


    Kann mir jemand helfen???


    Eine Anleitung, Schritt für Schritt wäre von nötten...

  • Da die Jungs aus den anderen Threads so ihre Probleme hatten, hier nochmal
    Schritt fuer Schritt:
    1.) Besorge Dir einen Editor, der Unix-konforme Dateien erstellen kann und
    benutze NUR diesen Editor, um die Textdateien zu erstellen/aendern.
    2.) Kopiere folgendes in eine Textdatei mit dem Namen WoL.sh:

    Code
    #!/usr/bin/env python
    import socket
    import time
    s=socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    while 1:
    s.sendto('\xff'*6+'\x00\x12\x3A\x45\x56\x78'*16, ('192.168.172.100', 9))
    print "Sent paket!"
    time.sleep(180)


    3.) Tausche die MAC-Adresse (das sind die Zahlen hinter den "\x") gegen die
    MAC-Adresse Deiner Linkstation aus. Die Adresse Deiner Linkstation findest Du
    auf einem Aufkleber auf der Unterseite oder der Rueckseite der LS.
    Hier im Beispiel waere die MAC-Adresse auf dem Aufkleber die 00123A455678
    gewesen.
    4.) Tausche die IP-Adresse (das ist die 192.168.172.100) gegen die IP-Adresse
    Deiner Linkstation aus.
    5.) Kopiere die Textdatei auf die Dreambox in das Verzeichnis /home/root (das
    ist das Verzeichnis, in dem Du landest, wenn Du per Telnet auf die Box gehst).
    6.) Starte eine Telnetsession zu Deiner Dreambox und melde Dich als Benutzer
    "root" (ohne Anfuerungszeichen) an. Wenn Du das Passwort nicht veraendert
    hast, ist es leer (also nur Return druecken).
    7.) Pruefe mit "ls -l" (das ist ein kleines L), dass die Datei WoL.sh im aktuellen
    Verzeichnis liegt.
    8.) Fuehre folgendes aus:

    Code
    chmod 700 WoL.sh


    ACHTUNG: beim Dateinamen spielen Gross- und Kleinschreibung eine Rolle.
    9.) Wie 7.) aber diesmal sollte der Dateiname in gruener Farbe sein und "rwx"
    am Anfang der Zeile stehen.
    10.) Erstelle eine Datei mit dem Namen WoLStart.sh mit dem Editor und
    kopiere folgendes hinein:

    Bash
    #!/bin/sh
    /home/root/WoL.sh &


    11.) Kopiere die Datei in das gleiche Verzeichnis wie WoL.sh auf der Dreambox
    und gehe wieder in die Telnetsession.
    12.) Pruefe mit "ls -l" (das ist ein kleines L), dass die Datei WoLStart.sh im aktuellen
    Verzeichnis auf der Dreambox neben WoL.sh liegt.
    13.) Im Telnet gib folgendes ein:

    Code
    chmod 700 WoLStart.sh


    14.) Wie 9.) nur WoLStart.sh sollte gruen sein.
    15.) Gib folgendes ein:

    Code
    ln -s /home/root/WoLStart.sh /etc/rcS.d/S99WoLStart.sh


    16.) Pruefe mit "ls -l /etc/rcS.d" dass der Link richtig angelegt wurde. Die
    Ausgabe sollte etwa so aussehen:

    Code
    S99WoLStart.sh -> /home/root/WoLStart.sh


    Jetzt sollte bei jedem Neustart der Box (nicht aber beim Restart von Enigma2 !)
    die Linkstation mit angehen.
    Du kannst Testen, ob Du die Dateien richtig angelegt hast, wenn Du folgendes
    in der Telnetsession eingibst:

    Code
    /etc/rcS.d/S99WoLStart.sh


    Dann sollte die Linkstation aufwachen (so sie denn vorher geschlafen hat).
    Die Zeile mit dem "print" kann man auch weglassen, dann wird weniger ins
    Messagelog geschrieben.
    Hoffe das hilft.

    Bitte keine unaufgeforderten PNs schicken, sondern im Forum fragen. Ich schaue NIE ohne Auffordung in meine PN-Box.

  • Danke für die schnellen Antworten. Speziell an kenatonline für die super step by step Anleitung.


    Habs gleich umgesetzt. So ist der Stand:


    Fahre ich die Dreambox ins Stand By / Deep Stand By fährt die Linkstation herunter.


    Ist die Dreambox aktiv bleibt auch die Linksation aktiv ohne das der PC an ist.


    Nur beim Hochfahren macht er mir noch Probleme. Holle ich die Dreambox aus dem Deep Stand By oder aus dem einfachen Stand Bypassiert nichts. Erst wenn ich die Dreambox und die Linkstation Spannungsfrei mache fahren beide hoch. Das hochfahren der Linkstation ist aber normal nachdem sie Spannungsfrei war.


    Also im Klartext. Das Skript für das Hochfahren funzt noch nicht. Ist Sie jedoch hochgefahren, bleibt sie auch aktiv über das WoL.sh Skript.

  • Ich werde mir das am Freitag mal anschauen. Bin leider vorher nicht mehr
    in Reichweite meiner Box.

    Bitte keine unaufgeforderten PNs schicken, sondern im Forum fragen. Ich schaue NIE ohne Auffordung in meine PN-Box.

  • Musste mit Bedauern feststellen, dass die Linkstation doch wieder herunter fährt, wenn nur die Dream aktiv ist.


    Werde nach deiner Anleitung nochmal vorgehen und mal schauen was dann passiert.


    Trotzdem, danke für den schnellen support...

  • Das was Du in der Anleitung hier im Thread siehst, habe ich zum Erstellungszeitpunkt
    live an einer DM8000 mit Firmware 3.0.3 Stable ausprobiert.
    Hast Du an der Dreambox eine feste IP oder wird der Dreambox die IP per DHCP
    von einem Router verpasst?

    Bitte keine unaufgeforderten PNs schicken, sondern im Forum fragen. Ich schaue NIE ohne Auffordung in meine PN-Box.

  • DHCP is inaktiv. Hab eine feste IP zugeteilt. Werde morgen dein Szenario nochmal durchspielen. Vielleicht war es ja nur ein Fehler von mir...

  • Also meine beiden tuckern, egal ob ein PC an ist oder nicht.
    Das Problem tritt IMHO bei den LS-CHL auf, die Vorgänger ließen sich noch mit dem stop.cgi und resume.cgi erwecken dser schlafenlegen.

    . . . and I think to myself, what a wonderful Dream . . .

  • Quote

    Original von hekt0r
    DHCP is inaktiv. Hab eine feste IP zugeteilt. Werde morgen dein Szenario nochmal durchspielen. Vielleicht war es ja nur ein Fehler von mir...


    Gib mal im Telnet folgendes ein:

    Code
    ifconfig


    Steht da dann Deine feste IP-Adresse bei eth0 und vorallem bei Bcast ein 0.0.0.0 ?
    Oder steht da eine 169.254.x.x Adresse und bei Bcast ein 169.254.255.255 ?
    Wenn letzters dort steht, dann bitte im /etc/default/zeroconf mal die Zeile mit FALLBACK=yes
    vom Kommentarzeichen "#" befreien, damit nur im Fehlerfall eine ZeroConf-Adresse gesetzt
    wird. Danach dann ein reboot machen.

    Bitte keine unaufgeforderten PNs schicken, sondern im Forum fragen. Ich schaue NIE ohne Auffordung in meine PN-Box.

  • bei eth0 stand eine feste IP, bei Bcast 169.254.255.255


    hab zeroconfig geändert. danach stand die selbe IP bei eth0 und bei Bcast 0.0.0.0


    das ich die linkstation gemountet hab is aber kein prob. lasse meine timeshift und aufnahmen darüber laufen.

  • Jetzt sollte es auch mit dem Aufwachen beim Starten tun.
    Durch das Bcast 169.254.255.255 werden Broadcast-Pakete (und das sind die
    WoL-Pakete nunmal) nur an Ziele im 169.254-Netz durchgelassen.

    Bitte keine unaufgeforderten PNs schicken, sondern im Forum fragen. Ich schaue NIE ohne Auffordung in meine PN-Box.

  • OK. Ich habe das Ganze jetzt bei mir mal bei der DM8000 mit Firmware 3.0.3 Stable eingebaut.
    Ich habe ein Skript WoL.sh mit dem Pythonanteil und ein Skript WoLStart.sh mit dem Shellanteil
    in /home/root gelegt, mit chmod 700 ausfuehrbar gemacht und dann den symbolischen Link
    mit dem Namen S99WoLStart in /etc/rcS.d gelegt.
    Die Datei mit dem Shellanteil sieht so aus:

    Bash
    #!/bin/sh
    /home/root/WoL.sh &


    Ein "ls -l" auf /etc/rcS.d gibt folgendes aus:

    Code
    S99WoLStart -> /home/root/WoLStart.sh


    Wenn die Box aus dem Standby aufwacht, faehrt auch die Linkstation hoch.
    Mit "ps" kann man dann auch folgende Zeile in der Prozessliste sehen:

    Code
    python /home/root/WoL.sh


    Poste mal Deine Dateien und die Ausgabe von "ls -l" auf /etc/rcS.d.

    Bitte keine unaufgeforderten PNs schicken, sondern im Forum fragen. Ich schaue NIE ohne Auffordung in meine PN-Box.

  • bin die woche über beruflich unterwegs. melde mich sobald ich es umgesetzt habe.

  • bin deine anleitung nochmal schritt für schritt durchgegangen.
    hat auf einmal gefunzt. hoffe dabei bleibt es auch.

  • Ist doch prima.
    Setzt Du dann noch ein "[geloest]" vor den Titel?

    Bitte keine unaufgeforderten PNs schicken, sondern im Forum fragen. Ich schaue NIE ohne Auffordung in meine PN-Box.

  • Ich habe nach dieser Anleitung meine Linkstation Live LS-CHL 1TB wunderbar ans laufen gebracht:
    Dreambox an --> Linkstation an
    Dreambox aus --> Linkstation aus


    Jetzt habe ich mir am Wochenende eine Linkstation Pro Duo LS-WVL 4TB gekauft und die bekomme ich nicht aufgeweckt.


    Das Script habe ich entsprechend angepasst (MAC und IP, hab's mehrmal kontrolliert), aber es funktioniert leider nicht. Am Router (FritzBox7170) muss meiner Meinung nach nichts für das lokale Netz eingerichtet werden.


    ...ich bin dankbar für jede Idee...

    DM 8000 DVB-S2 - OE2.0 Experimental - GP3.2
    DM 800se DVB-S2 - OE2.0 Experimental - GP3.2
    DM 525 Combo DVB-S2 / DVB-C/T2 - OE2.5 Exp - GP3.3
    DM 920 DVB-S2 FBC - OE2.5 Exp - GP3.3

  • In die Zeile VOR dem "while 1:" fuege folgende Zeile ein:

    Code
    s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)


    Bei der IP Adresse setzt Du alle Anteile auf "255", die in Deiner Netzmaske auf
    "0" stehen.
    Z.B.: Netzmaske = 255.255.255.0 -> IP-Adresse = 192.168.1.255
    Netzmaske = 255.255.0.0 -> IP-Adresse = 192.168.255.255
    Netzmaske = 255.0.0.0 -> IP-Adresse = 192.255.255.255
    Die Netzmaske bekommst Du auf Windows mit "ipconfig" heraus, auf Linux/OSX
    mit "ifconfig".


    Hier ein komplettes Beispiel fuer Netzmaske 255.255.255.0 und Box IP 192.168.1.1:

    Code
    #!/usr/bin/env python
    import socket
    import time
    s=socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
    while 1:
    s.sendto('\xff'*6+'\x00\x11\x22\x33\x44\x55'*16, ('192.168.1.255', 9))
    time.sleep(180)

    Bitte keine unaufgeforderten PNs schicken, sondern im Forum fragen. Ich schaue NIE ohne Auffordung in meine PN-Box.

    Edited once, last by kenatonline ().