Formas de autorizar um aplicativo apenas uma vez para ser executado como root

1

Acabei de escrever um pequeno aplicativo que modifica um arquivo no diretório /sys . Basicamente, o arquivo /sys/class/backlight/intel_backlight/brightness é modificado para ajustar o brilho. Por isso, requer permissão de root. O aplicativo está escrito em C ++ e estou usando a função system para executar um comando echo (eu queria apenas a solução mais simples). Eu queria saber se eu poderia autorizar o aplicativo uma vez e, em seguida, sempre que é lançado, ele é executado como root. Não quero que o aplicativo solicite permissão de raiz toda vez que for iniciado.

EDITAR:

$ ls -l 
-rwxrwxr-x 1 res res 413934 Jul  6 22:08 BrightnessControl

Obrigado.

    
por rahules 06.07.2013 / 18:30

2 respostas

0

link veja a resposta do visudo [editar o arquivo sudoers com sudo visudo]

e faça com que ele execute como root apenas aquele arquivo sem perguntar. link

    
por namingFailed 06.07.2013 / 18:53
0

Talvez eu entenda errado, mas acho que o bit suid é o que você precisa. Primeiro, mude o dono do programa para root, então

chmod +s <filename>

Por isso, ele será executado com a conta do proprietário dos arquivos, independentemente de qual usuário esteja iniciando.

    
por soulsource 06.07.2013 / 19:02