FHEM > Sonstiges

Fhem und System cmd

(1/1)

Knallkopp_02:
Hallo liebe Community,

ich beschäftige mich grade mit dem System command. Folgendes habe ich aktuell umgesetzt, Funktioniert aber nicht


--- Code: ---defmod test DOIF ([13:57:00]) ({system(' sudo ../hub-ctrl.c/hub-ctrl -h 1 -P 2 -p 0 &');;;; 0})

--- Ende Code ---

Folgender Befehl geht wenn ich im Root bin im PI


--- Code: ---sudo ./hub-ctrl.c/hub-ctrl -h 1 -P 2 -p 0

--- Ende Code ---

als Ausgabe bekomme ich im Eventmonitor folgendes


--- Code: ---2021-10-17 13:59:00 DOIF test cmd_nr: 1
2021-10-17 13:59:00 DOIF test cmd: 1
2021-10-17 13:59:00 DOIF test cmd_event: timer_1
2021-10-17 13:59:00 DOIF test cmd_1

--- Ende Code ---

Würde mich über Ideen zur Lösung freuen.

Gruß Knallkopp_02

MadMax-FHEM:
1. relative Pfade sind immer problematisch, weil: du ja u.U. nicht genau weißt wo das System bei Aufruf gerade steht -> Gesamtpfad.
(wenn ich richtig deute, also Root tatsächlich / ist und nicht "Root" von User pi also /home/pi dann ist das eh ein ungeeigneter Ort für eine Datei)

2. braucht das Script bzw. das was das Script intern tut (was macht das Script? also besser mal posten) wirklich sudo? Oder braucht es sudo nur, weil das Script da liegt wo es eben nur root ausführen darf?

3. wenn das Script also das was das Script tut wirklich sudo braucht (und deshalb mit sudo gestartet wird/werden muss), darf der User fhem überhaupt sudo? Und: darf der User fhem das denn auch OHNE Passworteingabe, weil die macht ja keiner ;)

Das erst mal soweit...
EDIT: evtl. das noch interessant https://heinz-otto.blogspot.com/2018/02/in-fhem-externe-programme-aufrufen.html

Und warum ein DOIF? Das geht doch mit einem simplen at ;)

Gruß, Joachim

betateilchen:

--- Zitat von: MadMax-FHEM am 17 Oktober 2021, 14:27:31 ---Und warum ein DOIF? Das geht doch mit einem simplen at ;)

--- Ende Zitat ---

"Das Böse ist immer und überall..." (EAV)

Ich kenne Leute, die haben sich aus Excel eine Textverarbeitung gebaut...

Knallkopp_02:
Hallo MadMax-FHEM,

habe jetzt etwas getestet und es zum laufen gebracht.

1. Problem war wirklich der relative Pfad, als ich den angepasst hatte ging es schon.
2. Problem habe ich dann auch noch behoben weil das Script wirklich an einem Platz gelegen hat, der wirklich Admin Rechte brauchte

Das Doif hatte ich nur zum testen genommen, das habe ich nun auch angepasst.

Danke für die vielen nützlichen Infos

Gruß Knallkopp_02

rudolfkoenig:
Statt {system("programm&")} empfehle ich "programm", das ist die dritte Variante eines FHEM-Befehls.

Navigation

[0] Themen-Index

Zur normalen Ansicht wechseln