Hallo Zusammen,
ich habe mit FHEM-weblink eine Befehlsezusammenstellung gebaut.
Die Befehle für FHEM werden auch korrekt ausgeführt (war ja auch so in der Hilfe beschrieben ;) )
Nur meine Befehle für mein Ubuntu werden nicht ausgeführt, gibt bei der Ausführung die Fehlermeldung "Unknown command {system("sudo, try help." und auch die Darstellung ist nicht korrekt.
Ein {system("sudo shutdown &")} wird von FHEM direkt in der Kommandozeile ausgeführt.
define systemBefehle weblink cmdList Restart:FHEM-Neustart:shutdown+restart Restart:Odroid-Neustart:{system("sudo reboot &")}
Wie macht Ihr das?
- bei weblink cmdList werden die Gruppen durch Leerzeichen getrennt, deswegen darf im Befehlsteil kein Leerzeichen sein. Da das auch im URL verpoent ist, ersetzt man das durch %20 oder plus-Zeichen (+, beides "standard" URL/CGI escape)
- die Parameter bekommt FHEM per CGI, da ist & der Trenner, das muss man also auch anders schreiben, als %26
- {system("blabla &")} sollte man in FHEM als "blabla" schreiben, da wird naemlich STDOUT/SDERR ins FHEM-Log umgeleitet.
Hier ist eine korrigierte Variante:
defmod systemBefehle weblink cmdList Restart:FHEM-Neustart:shutdown+restart Restart:FHEM-Herunterfahren:shutdown unknown:FHEM-Aktualisierungsprüfung:update+check Update:FHEM-Aktualisierung:update Restart:Odroid-Neustart:"sudo+reboot" Restart:Odroid-Herunterfahren:"sudo+shutdown"
ZitatWie macht Ihr das?
Ich wuerde nie auf die Idee kommen, ein Unix System ueber FHEM zu rebooten, sowas macht man aus der Konsole.
Vielen Dank für die Hilfe.
Es ist auch eher die Notfall-Variante, bevor die Partner mal wieder einfach nur den Stecker zieht...
Hallo,
Auf meinem Raspberry funktioniert das weder mit
define systemBefehle weblink cmdList Restart:Raspi-Neustart:"sudo+reboot+now"
noch mit
define systemBefehle weblink cmdList Restart:Raspi-Neustart:"sudo%20reboot%20now"
weil vermutliche ein wirkliches Leerzeichen benötigt wird.
Gibt es hierfür eine Lösung?
Darf denn bei dir der User fhem "sudo"?
EDIT: ohne entsprechende Einträge in sudoers bzw. (besser!) anlegen einer eigenen sudoers darf der User fhem das nämlich nicht! (zumindest nicht ohne Passworteingabe, die keiner macht/machen kann und fhem User ja auch erst mal kein PW hat/hätte)...
Steht etwas im Log?
Funktioniert denn:
"sudo reboot now"
MIT den Anführungszeichen in FhemWeb-cmd?
Gruß, Joachim
Hallo MadMax,
danke für die rasche Antwort.
"sudo reboot now" mit Anführungszeichen funktioniert nicht (es kommt keine Fehlermeldung in Fhem).
Wie geht das mit den Einträgen in sudoers?
Hi,
ich hatte hier mal was aufgeschrieben: https://heinz-otto.blogspot.com/2017/08/raspberry-ausschalten-mit-fhem.html
Gruß Otto
Danke für die Hilfe, mit Otto´s Aufzeichnung konnte ich das lösen !