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'