Estou tentando definir o 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
Criei uma regra em /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"
Se eu systemctl reiniciar o udev, udevadm control -R ou reinicializar, a regra não será aplicada. O que eu fiz errado?
Responder1
O Udev cria entradas de arquivo de dispositivo em /dev
. As regras do Udev afetam essas entradas. Os arquivos abaixo /sys
são interfaces diretas do kernel, criadas pelo kernel e não afetadas pelo udev.
Se você quiser alterar a propriedade ou as permissões de um arquivo em /sys
, faça isso explicitamente.
#!/bin/sh
chown neil /sys/class/backlight/intel_backlight/brightness
chmod 664 /sys/class/backlight/intel_backlight/brightness
Se o dispositivo de exibição disparar um evento udev, você poderá executar este script com uma RUN=…
ação. Alternativamente, execute este script em algum lugar do processo de inicialização, por exemplo, em /etc/rc.local
.
Responder2
Acabei de me deparar com esta pergunta. A maneira correta de alterar a permissão e propriedade de arquivos em/sys é usando configurações tmpfiles. Por exemplo, colocar o seguinte /etc/tmpfiles.d/screen-backlight.conf
alcançaria o que você deseja:
m /sys/class/backlight/intel_backlight/brightness 0664 root some_group_that_neil_belongs_to - -
Veja man 5 tmpfiles.d
todas as opções.