Seite 1 von 2
OH-4.0.0.M2 - Whitelist-Warnung
Verfasst: 25. Apr 2023 18:14
von peter-pan
Hallo,
ich habe beim Starten (Neustarten) von OH festgestellt, dass irgend etwas mit meiner Whitelist nicht in Ordnung sein soll.
In der Vergangenheit (OH2 - OH3) hatte ich damit keine Probleme.
Code: Alles auswählen
2023-04-25 16:09:46.652 [WARN ] [cTransformationWhitelistWatchService] - Cannot read whitelist file, exec transformations won't be processed: misc/exec.whitelist
Berechtigungen:
Code: Alles auswählen
-rw-rw-r-- 1 openhab openhab 332 31. Mär 17:21 exec.whitelist
Dateityp lt. VSC "Nur Text" - "LF"
Inhalt:
Code: Alles auswählen
# For security reasons all commands that are used by the exec binding or transformation need to be whitelisted.
# Every command needs to be listed on a separate line below.
/bin/bash /etc/openhab/scripts/cpu_temp.sh
/bin/bash /etc/openhab/scripts/test.sh
echo "scale=2;($(/bin/cat /sys/class/thermal/thermal_zone0/temp)/1000)" | bc
Hat jemand eine Idee?
Re: OH-4.0.0.M2 - Whitelist-Warnung
Verfasst: 25. Apr 2023 19:18
von udo1toni
Nutzt Du denn exec transformation? (Mit Betonung auf Transformation)?
Ansosnten denke daran, dass 4.0 noch ein paar Monate braucht...
Re: OH-4.0.0.M2 - Whitelist-Warnung
Verfasst: 25. Apr 2023 22:15
von peter-pan
@udo1toni
Hallo Udo,
Danke für dein feedback.
Ich hoffe ich habe dich richtig verstanden. Das Add-On "Exec transformation" habe ich installiert.
Meine dazugehörige Things-Datei sieht so aus:
Code: Alles auswählen
Thing exec:command:my_user "Angemeldet ist" @ "Buero"
[command="/bin/bash /etc/openhab/scripts/test.sh", interval=120, timeout=30, transform="REGEX((.*?))"]
Thing exec:command:cpu_temp "OH2-PI Temperatur" @ "Buero"
[command="/bin/bash /etc/openhab/scripts/cpu_temp.sh", interval=120, timeout=30, transform="REGEX((.*?))"]
Thing exec:command:cpu_temp_command "PI4 Temperatur.:" @ "Buero"
[command="echo \"scale=2;($(/bin/cat /sys/class/thermal/thermal_zone0/temp)/1000)\" | bc", interval=120, timeout=30, transform="REGEX((.*?))"]
Ein Item daz:
Code: Alles auswählen
String Dummy "Versucherle [%s]" (gPower,gPower1) ["WallSwitch", "Point_Control_Switch"] {channel="exec:command:cpu_temp:output"}
Das Item wird auch mit Werten befüllt.
Das Script (cpu_temp.sh) dazu sieht so aus:
Code: Alles auswählen
#!/bin/bash
INPUT=$(/bin/cat /sys/class/thermal/thermal_zone0/temp)
TEMP=$(echo "scale=2; $INPUT / 1000" | bc)
echo $TEMP
und läuft:
Code: Alles auswählen
hab3@oh3ssd:/etc/openhab/scripts $ ./cpu_temp.sh
40.89
hab3@oh3ssd:/etc/openhab/scripts $
Berechtigungen:
Code: Alles auswählen
hab3@oh3ssd:/etc/openhab/scripts $ ls -alF
insgesamt 48
drwxrwxr-x 2 openhab openhab 4096 23. Apr 18:11 ./
drwxrwxr-x 16 openhab openhab 4096 23. Dez 2021 ../
-rw-rw-r-- 1 openhab openhab 193 27. Jul 2018 cpuRasPi_Office_temp.sh
-rw-rw-r-- 1 openhab openhab 82 2. Jul 2018 cpu_temp1.sh
-rwxrwxr-x 1 openhab openhab 123 23. Feb 2020 cpu_temp.sh*
-rw-rw-r-- 1 openhab openhab 148 20. Mai 2021 fahrenheit.sh
-rw-rw-r-- 1 openhab openhab 176 17. Jul 2018 mount_check.sh
-rw-rw-r-- 1 openhab openhab 163 18. Sep 2019 mountusb.sh
-rw-rw-r-- 1 openhab openhab 166 2. Jul 2018 'Mount USB-Stick.txt'
-rw-rw-r-- 1 openhab openhab 1326 9. Aug 2020 oh_uptime.sh
-rw-rw-r-- 1 openhab openhab 236 12. Dez 2021 readme.txt
-rwxrwxr-x 1 openhab openhab 237 4. Jul 2022 test.sh*
Hab ich Infos vergessen ?
Re: OH-4.0.0.M2 - Whitelist-Warnung
Verfasst: 26. Apr 2023 00:32
von udo1toni
Nein, eben nicht

Was Du installiert hast, ist das exec Binding, nicht die exec Transformation (kann aber sein, dass die zusätzlich installiert ist...).
Und was Du konfiguriert hast, ist ein exec Thing (bzw. mehrere).
Wie gesagt, ich denke, die Meldung ist einfach der Tatsache geschuldet, dass die 4.0 Beta ist.
Re: OH-4.0.0.M2 - Whitelist-Warnung
Verfasst: 26. Apr 2023 12:13
von peter-pan
Da warte ich dann auch mal ab, obwohl ich sowohl Binding als auch Transformation installiert habe.
exec-trans.jpg
exec-bind.jpg
Im englischen Forum hab ich leider nichts dazu gefunden.
Danke für die Info.
Re: OH-4.0.0.M2 - Whitelist-Warnung
Verfasst: 26. Apr 2023 20:25
von bastler
ich kann nur zur info beitragen dass ich aktuell oh 4.0.0.m1 installiert habe und bei mir die exec.whitelist keine probleme macht. ich hab keine solche fehlermeldung in den logs gefunden und meine cpu temperatur wird auch korrekt angezeigt.
so sieht meine exec.whitelist aus:
Code: Alles auswählen
# For security reasons all commands that are used by the exec binding or transformation need to be whitelisted.
# Every command needs to be listed on a separate line below.
# CPU-Temperatur auslesen
cat /sys/class/thermal/thermal_zone0/temp
Re: OH-4.0.0.M2 - Whitelist-Warnung
Verfasst: 26. Apr 2023 20:57
von peter-pan
@bastler
Danke für deine Info. Im Prinzip das gleiche wie bei mir.
Das kuriose bei mir ist, dass die Kommandos ja ausgeführt werden und ich auch Werte in die Items gemeldet bekomme. Deshalb bin ich etwas über die Meldung verwundert. Ich hatte auch bisher mit meiner Whitelist nie Probleme und habe auch seit OH2.5 nichts geändert.
Andere Frage: Wie formatierst du den Wert ?
Da kommt doch so etwas raus:
Code: Alles auswählen
hab3@oh3ssd:~ $ cat /sys/class/thermal/thermal_zone0/temp
49660
Also ein Wert ohne Punkt und Komma !
Re: OH-4.0.0.M2 - Whitelist-Warnung
Verfasst: 26. Apr 2023 21:19
von bastler
ja stimmt, wenn ich das in der kommandozeile eingebe kommt so etwas raus.
vermutlich sieht meine things anders aus als bei dir:
Code: Alles auswählen
Thing exec:command:cpu_temp "CPU-Temperatur" [
// Command to execute
command="cat /sys/class/thermal/thermal_zone0/temp",
// interval time in seconds
interval=15,
// should it run when input channel is changed
autorun=false,
// REGEX transformation to make 44007/1000 => 44,007
// explanation for the regex
// s/ - substitute
// (.{2})(.{3}) - a a number with 5 characters, split in two groups
// /$1.$2/g - returned value= first group, a comma, then second group, used to devide by 1000
// transform="REGEX(s/(.{2})(.{3})/$1,$2/g)"
// /$1.$2/g - returned value= first group, devide by 1000
transform="REGEX(s/(.{2})(.{3})/$1/g)"
// alternative EXEC transformation with python
// transform="EXEC(python3 -c \"print(%s/1000)\")"
]
Re: OH-4.0.0.M2 - Whitelist-Warnung
Verfasst: 26. Apr 2023 21:32
von J-N-K
In der Transformation ist es ein Bug, im Binding sollte es funktionieren. Fix:
https://github.com/openhab/openhab-addons/pull/14884
Re: OH-4.0.0.M2 - Whitelist-Warnung
Verfasst: 27. Apr 2023 11:39
von peter-pan
@bastler
Code: Alles auswählen
Thing exec:command:cpu_temp "CPU-Temperatur" [
command="cat /sys/class/thermal/thermal_zone0/temp", interval=15, autorun=false, transform="REGEX(s/(.{2})(.{3})/$1/g)"]
Wenn ich deinen Code so anschaue, ist das fast der Gleiche. Nur dass ich für die Umwandlung in eine Dezimalzahl nicht REGEX nehme, sondern eine Berechnung mit "bc" auf zwei Dezimalstellen.
@J-N-K
Hab's leider nicht verstanden. Wird da noch was angepasst oder muss ich da selbst aktiv werden ? Und wenn ja, wo ?
