GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Kann nicht in Datei /sys/class/backlight/acpi_video0/brightness (ubuntu) schreiben

Der Fehler tritt auf, weil sudo die Berechtigungen für den Befehl erhöht (sudo echo 5 ), aber nicht die Umleitung zum Schreiben der Datei (> /sys/class/backlight/acpi_video0/brightness ). Die eigentliche Bash-Shell benötigt eine Schreibberechtigung, weshalb sie mit sudo fehlschlägt, aber als root funktioniert.

Sie können dies umgehen, indem Sie tee ausführen Befehl als root, um in die Datei zu schreiben:

echo 5 | sudo tee /sys/class/backlight/acpi_video0/brightness

Beachten Sie, dass dies auch "5" an Ihr Terminal ausgibt. Dies ist ein normaler Nebeneffekt des tee Befehl.


Wie im Arch-Wiki (Link) geschrieben, standardmäßig nur root kann die Helligkeit durch diese Methode ändern. Um Benutzer im video zuzulassen Gruppe zum Ändern der Helligkeit, ein udev Regel wie die folgende kann verwendet werden (ersetzen Sie die <vendor> mit Ihrer Anbieter-ID. Z.B. acpi_video0 , intel_backlight ) :

% 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"

Dann müssen Sie Ihren Benutzer zu video hinzufügen Gruppe.

usermod -aG video <user>

Danach sollte das funktionieren:

echo 5 > /sys/class/backlight/<vendor>/brightness

Wenn Sie nicht möchten, dass 5 wiedergegeben wird, funktioniert dies auch:

sudo sh -c 'echo 5 > /sys/class/backlight/acpi_video0/brightness'

Linux
  1. Wie behandelt Linux mehrere aufeinanderfolgende Pfadtrennzeichen (/home////username///file)?

  2. Ist>&- effizienter als>/dev/null?

  3. Ubuntu 14.04 „erhielt keinen Wiedergabe-URI bei der Eingabedatei:///*“?

  4. Verwenden Sie ein Git-Repository auf /var/www/html/

  5. Dev, Proc, Sys in einer Chroot-Umgebung mounten?

Die Dateien /proc/mounts, /etc/mtab und /proc/partitions verstehen

unix:///var/run/supervisor.sock keine solche Datei

Datei in Ubuntu, die der Datei /etc/inittab in RedHat entspricht

/sys/ Dokumentation?

Sollten Websites gemäß der empfohlenen Verwendung in /var/ oder /usr/ leben?

Wie kann ich mit sudo prüfen, ob eine Datei existiert?