Estou iniciando o X como usuário e preciso definir o brilho do teclado /sys/class/leds/asus\:\:kbd_backlight/brightness
. O /sys/
diretório é recriado após a reinicialização, portanto, as permissões serão redefinidas também. Como faço para configurá-lo para não precisar tornar o arquivo gravável por todos os usuários após cada inicialização?
Estou usando o Archlinux com o SDDM como gerenciador de login e o KDE como DE.
filesystems
permissions
users
xonado
fonte
fonte
Respostas:
Não, você não pode, a permissão do sysfs é definida no espaço do kernel e não pode ser alterada com as ferramentas do espaço do usuário (a menos que com suporte do lado do kernel).
Mas, para o seu próprio problema, você pode configurar uma entrada sudo que permita que todos gravem nesse caminho, ou seja,
ALL ALL = (ALL) NOPASSWD: /usr/bin/tee /sys/class/leds/asus\:\:kbd_backlight/brightness
E quando você escreve nesse diretório, use um script como este,
echo 1 | sudo /usr/bin/tee "/sys/class/leds/asus::kbd_backlight/brightness"
fonte
/sys/devices/platform/sony-laptop/kbd_backlight
para controlar a luz de fundo do teclado. Alterei o caminho no seu código que leva a este erro:bash: syntax error near unexpected token
('' O comando que eu digitei éALL ALL = (ALL) NOPASSWD: /usr/bin/tee /sys/devices/platform/sony-laptop/kbd_backlight
Por favor, ajude/usr/bin/tee
e/sys/class...
. Depois de uma breve olhada na gramáticaman sudoers
, suspeito que a vírgula seja necessária.O
/sys
diretório no Linux é falso, é uma visão do kernel vestido como arquivos. Portanto, alterar permissões permanentemente significa hackear o kernel, e isso seria desaconselhável. Como dizem os comentários, talvez umasystemd
unidade que defina isso seja uma solução (em geral, defina a alteração como parte do processo de inicialização).fonte
Eu tive um problema semelhante, precisava definir as permissões antes de executar o serviço concordado. Após o comentário de goldilocks, criei este script systemd:
Depois de escrever o arquivo de serviço, eu o habilitei com
fonte