El error ocurre porque sudo eleva los permisos para el comando (sudo echo 5
) pero no la redirección para escribir el archivo (> /sys/class/backlight/acpi_video0/brightness
). El shell bash real necesita permiso para escribir, por lo que falla con sudo pero funciona como root.
Puede solucionar esto ejecutando tee
comando como root para escribir en el archivo:
echo 5 | sudo tee /sys/class/backlight/acpi_video0/brightness
Tenga en cuenta que esto también hará eco de "5" en su terminal. Este es un efecto secundario normal del tee
comando.
Como está escrito en Arch wiki (enlace), por defecto, solo root
puede cambiar el brillo por este método. Para permitir usuarios en el video
grupo para cambiar el brillo, un udev
Se puede usar una regla como la siguiente (reemplace el <vendor>
con su identificación de proveedor. P.ej. 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"
Luego debe agregar su usuario al video
grupo.
usermod -aG video <user>
Después de eso, esto debería funcionar:
echo 5 > /sys/class/backlight/<vendor>/brightness
Si no desea que se repita el 5, esto también funciona:
sudo sh -c 'echo 5 > /sys/class/backlight/acpi_video0/brightness'