Estoy intentando establecer un atributo de grupo para
root@luna:~# ls -l /sys/class/backlight/intel_backlight/brightness
-rw-r--r-- 1 root root 4096 Sep 24 08:28 /sys/class/backlight/intel_backlight/brightness
Creé una regla en /etc/udev/rules.d/99-local.rules:
root@luna:/etc/udev/rules.d# cat 99-local.rules
KERNEL=="intel_backlight", SUBSYSTEM=="backlight", GROUP="neil", mode="0664"
Ya sea que systemctl reinicie udev, udevadm control -R o reinicie, la regla no se aplica. ¿Qué he hecho mal?
Respuesta1
Udev crea entradas de archivos de dispositivo en /dev
. Las reglas de Udev afectan esas entradas. Los archivos siguientes /sys
son interfaces directas del kernel, creadas por el kernel y no afectadas por udev.
Si desea cambiar la propiedad o los permisos de un archivo en /sys
, hágalo explícitamente.
#!/bin/sh
chown neil /sys/class/backlight/intel_backlight/brightness
chmod 664 /sys/class/backlight/intel_backlight/brightness
Si el dispositivo de visualización activa un evento udev, puede ejecutar este script con una RUN=…
acción. Alternativamente, ejecute este script en algún lugar del proceso de arranque, por ejemplo, en /etc/rc.local
.
Respuesta2
Me acabo de encontrar con esta pregunta. La forma correcta de cambiar el permiso y la propiedad de los archivos en /sys es mediante las configuraciones de tmpfiles. Por ejemplo, colocar lo siguiente /etc/tmpfiles.d/screen-backlight.conf
lograría lo que desea:
m /sys/class/backlight/intel_backlight/brightness 0664 root some_group_that_neil_belongs_to - -
Consulte man 5 tmpfiles.d
todas las opciones.