RPI 2 mit OpenElec 5.0.4 / OSMC soll Windows-Server per LAN herunterfahren können

  • Hallo,

    da WakeOnLan schon klasse aus OpenElec 5.0.4 funktioniert und meinen ausgeschalteten Windows 7 Desktop-PC aufweckt, auf dem die Bilder, Filme und Musik liegt,
    suche ich eigentlich noch nach einer Möglichkeit, nach dem Medienkonsum am Raspberry Pi2 den Windows 7 Desktop-PC auch wieder remote runterfahren zu können.
    Am coolsten wäre es, wenn ich den Befehl mit in das Ausschaltmenü des OpenElec einbauen könnte, zur Not würde mir aber auch ein Programm-AddOn reichen, was den Zweck erfüllt.

    Um dieses von einem normalen Linux-System zu realisieren, würde ich folgenden Befehl an den Windows Desktop senden, um ihn abzuschalten:

    Code
    net rpc -S <ip address> -U <username>%<password> shutdown -t 1 -f

    Leider kennt Openelec/der Raspberry diesen Befehl nicht. Kann ich den nachrüsten/nachinstallieren ?
    SSH Zugang zum OpenElec-Raspberry habe ich :)

    Kenne mich mit Linux nur rudimentär aus, lese mich aber gerne ein, wenn mir jemand "Starthilfe" gibt wonach ich Ausschau halten muss...


    EDIT 1:

    Habe selbst nochmal ein bißchen rumprobiert und ein bißchen was erreicht.
    Wenn ich auf meinem Windows 7 Desktop den "Telnet Server" nachinstalliere, und meinen Benutzer in die Windows Gruppe "TelnetClients" packe,
    dann kann ich vom Raspberry aus einen Shutdown am Windows 7 PC auslösen. - Funktioniert zwar, bringt mich aber nicht weiter, da ich das nicht automatisiert kriege !?

    Momentan mache ich das per SSH händisch:

  • Hallo, führe auf dem rPI folgendes per SSH aus:

    Code
    sudo apt-get install samba-common

    Danach sollte dein Befehl funktionieren.
    Es kann sein das Du das Paket vorher noch deinstallieren musst und wieder neu installieren :)
    Wie du das nun beim XBMC beenden / Shutdown ausführst weiß ich jedoch nicht :)
    Quelle: 2 Sek google-fu.

    --------------
    Guides nicht mehr verfügbar wegen Youtube unvermögen guten von schlechten Kodi Videos zu unterscheiden.

    Einmal editiert, zuletzt von SkyBird1980 (28. Februar 2015 um 15:21)

  • SkyBird1980:

    Vielen Dank erstmal für die Rückmeldung. Das hilft jedoch nicht, da OpenElec auf dem Raspi kein apt-get unterstützt. (Gefunden und getestet hatte ich das auch schon ;) )
    Hatte dann sogar schon im OpenElec Setup die Samba-Unterstützung nachinstalliert, was aber auch keinen Support für den "net rpc" Befehl brachte...

    Daher bin ich momentan mit telnet am testen, was grundsätzlich schon funktionieren würde aber keine Möglichkeit der Automation bietet, wenn ich das richtig sehe.
    Vielleicht muss ich an meinem Windows System ja auch cygwin für SSH-Support installieren, aber noch habe ich keine Ahnung ob mich das weiterbringt...

  • Hallo, führe auf dem rPI folgendes per SSH aus:

    Code
    sudo apt-get install samba-common

    Danach sollte dein Befehl funktionieren.
    Es kann sein das Du das Paket vorher noch deinstallieren musst und wieder neu installieren :)
    Wie du das nun beim XBMC beenden / Shutdown ausführst weiß ich jedoch nicht :)
    Quelle: 2 Sek google-fu.

    OE ist ein readonly System, somit kann man da nicht Sachen nachinstallieren.
    Eine Möglichkeit gibt es noch inoficial repo, somit konnte ich rsync "nachinstallieren".

  • Habe mal schnell von OpenElec auf OSMC (Nachfolger RaspBMC) gewechselt.
    Dort geht apt-get install und ich konnte samba-common installieren (bzw. es ist schon installiert gewesen und ich habe es nur noch upgedatet)
    Trotzdem ist auch dort der "net rpc" befehl nicht verfügbar :( - Schade.

    Ich bin schon ein paar inoffizielle Repos in OpenElec durch, habe dort aber nichts Samba-mäßiges gefunden, und auch nichts um Windows Rechner runterzufahren :)
    Ich experimentiere jetzt mal noch ein wenig mit OSMC (Raspbian), ob ich dort "net rpc" doch noch irgendwie an den Start kriege.

    EDIT:
    Ich habe es jetzt unter OSMC hinbekommen. Ich habe einmal ein "sudo apt-get update", dann ein "sudo apt-get upgrade" und anschließen einmal ein "sudo apt-get install samba samba-common-bin" abgesetzt.
    Danach war der "net rpc" Befehl verfügbar. - Nach einrichten der Benutzerrechte fürs Herunterfahren in den Windows-Gruppenrichtlinien (siehe hier: http://www.forum-raspberrypi.de/Thread-pc-ausschalten ) würde sich mein PC jetzt automatisch runterfahren lassen.
    Allerdings fragt auch dieser Befehl unsinnigerweise nochmal das lokale Root-Passwort ab, lässt sich also nicht skripten !?

    Code
    net rpc shutdown -I 172.16.50.21 Admin%meinpasswort
    Enter osmc's password:

    EDIT2:

    Ahh, die Lösung um die Passwortabfrage zu umgehen ist, den ursprünglich von mir genannten Befehl zu nutzen:

    Code
    net rpc -S 172.16.50.21 -U Admin%meinpasswort shutdown -t 30 -f

    Dann fährt der Rechner automatisch runter. - Jetzt muss ich diesen Befehl nur in irgendeinem Skript oder AddOn unterbringen.
    (Und es muss sich zeigen, ob das OSMC überhaupt irgendwas taugt, da es sich noch um eine Alpha-Version handelt.)


    EDIT3:

    Jetzt hab ichs: Wenn man den Raspi nun herunterfährt wird der Windows PC auch direkt mitausgeschaltet, wie ich es wollte.

    Ich habe ein kleine Textdatei mit dem Befehl von oben erstellt, und in meinem Fall nach /var/opt abgelegt.
    Dann habe ich der Textdatei "shutwin7.sh" noch passende Ausführungsrechte gegeben (755), und testweise dann einmal per SSH gestartet ( ./var/opt/shutwin7.sh )
    Als das funktionierte, habe ich das Skript noch zusätzlich auf den "Herunterfahren"-Knopf vom Confluence-Skin gelegt, indem ich in der XML-Datei "DialogButtonMenu.xml" mein Skript zusätzlich eingebunden habe.
    Zu finden ist diese im Fall von OSMC/Kodi unter /usr/share/kodi/addons/skin.confluence/720p, dort dann die Onclick-Zeile hinzufügen: System.Exec("./var/opt/shutwin7.sh")

    Im Tag "Label" kann man noch Wunschtext eintragen, so dass es nun bei mir so ausschaut:

    Externer Inhalt c1.staticflickr.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
  • Hay, bei mir hat der Button nicht funktioniert, weshalb ich das ganze ein bisschen geändert habe:

    In der XML-Datei steht jetzt folgendes:


    Kleiner Tipp, in der DialogButtonMenu.XML kann man einfach die Zeile des Ausschalten-Button direkt darunter kopieren und dessen id von 3 auf 4 stellen. Natürlich müssen die darunterligenden Buttons auch andere IDs bekommen... so wird aus der eigentlichen 4 eine 5, aus 5 6 usw..
    Den "2."Ausschalten Button kann man dann mit dem Code modifizieren, also das label usw ändern. (siehe Code)
    So hat man am Ende den eigentlichen "Ausschalten"-Button und den "Ausschalten + Windows"-Button. Das hat den Vorteil, dass man nicht immer Windows ausschalten muss, wenn man mal an den PC will und den Mediacenter ausschaltet.

    In meiner .SH-Datei steht jetzt folgendes:

    Code
    net rpc -S XXX.XXX.X.XXX -U BENUTZERNAME%PASSWORT shutdown -t 30 -f
    sudo shutdown -h 0

    Wie man hier sieht ist in der SH gleich der Befehl zum herunterfahren mit eingebaut, da er bei meinem Button nicht funktioniert hat.

    PS: Ich weiß das kommt ein bisschen spät, aber hab das nur für zukünftige Besucher aktualisiert.. damit kein (Anfänger so wie ich) mehr das Problem hat :rolleyes:

    ~ InvisibleQuantum

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!