[Gelöst]Datei Berechtigungen werden nach dem neustart rückgängig gemacht

Begonnen von SKg, 28 Juni 2021, 19:40:07

Vorheriges Thema - Nächstes Thema

SKg

Hallo,

ich habe da mal wieder eine Nuss zu knacken.
Das schaffe ich mit meinem geringen Linux wissen leider nicht.

Folgendes: Ich habe an meinem Pi ein Touch Display angeschlossen, plug and play funtioniert super.
Jetzt würde ich gerne die Helligkeit des Displays verstellen.
Dafür muss ich in die Datei "/sys/devices/platform/rpi_backlight/backlight/rpi_backlight/brightness" einen Zahlenwert von 0 - 255 eingeben.

Eigentümer und Gruppe der Datei sind "root root", die Berechtigung ist auf -rw-r--r- eingestellt also hat fhem nur lese Rechte.
Soweit so gut, wenn ich ein chmod 666 auf die oben genannte Datei ausführe klappt mein Schript auch.

Jetzt zu dem Problem.
Nach einem Neustart des Pi ist die berechtigung wieder zurückgestellt und "fhem" darf wieder nur lesen.

Woran liegt das und wie kann ich es beheben?

Mein System ist ein RaspberryPi 3B mit buster und minimalistischen Desktop (nur das nötigste um chromium zu starten).

MFG
Stephan

Wernieman

alles unter /sys ist nicht wirklich ein Dateisystem, sondern ein Pseudo-Dateisystem. Es wird also immer aktuell gebaut. Wenn Du z.B. Hardware reinsteckst, wird das Dateisystem erweitert, bzw. beim ziehen gelöscht. Beim Booten eben werden die Elemente neu angelegt.

Du könntest (unsauber aber möglich) beim starten des PIs per script die richtigen Rechte setzen. Allerdings würde ich:
  chown fhem
und NICHT
  chmod 666

Das erste erlaubt FHEM den Zugrif (root darf immer), das 2. erlaubt ALLEN den Zugriff. Merke: Nur soviel wie nötig, sowenig wie möglich.

Alternativ könntest Du per udev-Regel die Berechtigungen beim Bauen des Daisystems richtig setzen. Kann ich aber jetzt auch nicht "aus der Hand schütteln"

Nur mal als "schnelle Suche":
https://github.com/linusg/rpi-backlight/issues/23
https://superuser.com/questions/484678/cant-write-to-file-sys-class-backlight-acpi-video0-brightness-ubuntu

Beim letzten (ungetestet!) und Du must anpassen:
Zitat% cat /etc/udev/rules.d/backlight.rules
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="<vendor>", RUN+="/bin/chgrp video /sys/class/backlight/%k/brightness"
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="<vendor>", RUN+="/bin/chmod g+w /sys/class/backlight/%k/brightness"
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

SKg


Vielen Dank @Wernieman!!

Ich hatte gehofft es wäre ein wenig einfacher, nun gut dann werde ich mal weiter lesen.

MFG
Stephan

Wernieman

- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

SKg


@Wernieman, doch doch alles gut, vielen Dank.

MFG
Stephan


Wernieman

- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

SKg

@Wernieman


% cat /etc/udev/rules.d/backlight.rules
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="rpi_backlight", RUN+="/bin/chgrp video /sys/class/backlight/%k/brightness"
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="rpi_backlight", RUN+="/bin/chmod g+w /sys/class/backlight/%k/brightness"


Ich nehme mal an das "%K" der Platzhalter für  KERNEL=="<vendor>" sein soll oder?

Angenommen ich ich würde das so schreiben.
Was machen die backlight.rules Datei und wann wird sie ausgeführt?

Bei "RUN+="/bin/chgrp video" würd ich jetzt denken das die Datei der Gruppe Video zugeordnet und
bei "RUN+="/bin/chmod g+w" wird der Gruppe, Schreibrechte zugeteilt. Sehe ich das richtig?

MFg
Stephan


SKg

@Wernieman,

nach dem ich "fhem" in die "video" Gruppe gepackt und den Pi nochmal durchgestartet habe funktioniert alles wie es soll.

Vielen Dank nochmal an Wernieman.

MFG
Stephan

Wernieman

Naja .. Du hättest auch anstelle 2 Zeilen 1 Zeile mit chown fhem machen können


- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html