Como posso evitar que uma senha seja solicitada neste script? [duplicado]

0

Estou usando o Amazon Linux. Se eu fizer login como usuário "otheruser" e criar um script, test.sh, com este texto

sleep 5 ; sudo reboot now

Eu posso fazer login e executar o script assim…

[davea@mydevbox ~]$ sudo su - otheruser
[sudo] password for davea: 
Last login: Wed Apr 20 21:18:48 UTC 2016 on pts/0
[otheruser@mydevbox ~]$ sh test.sh 
[otheruser@mydevbox ~]$ 
Broadcast message from [email protected]
    (/dev/pts/0) at 21:19 ...

The system is going down for reboot NOW!

No entanto, se eu alterar o conteúdo do script para ser

sudo service jboss restart

e, em seguida, executo o script, solicitei uma senha ...

[davea@mydevbox ~]$ sudo su - otheruser
[sudo] password for davea: 
Last login: Wed Apr 20 21:09:03 UTC 2016 on pts/0
[otheruser@mydevbox ~]$ sh test.sh 
[sudo] password for otheruser: 

Eu gostaria que a segunda sequência fosse como a primeira em que não recebo uma senha pela segunda vez. Como posso fazer isso?

    
por Dave 21.04.2016 / 15:09

1 resposta

0

Outra abordagem é configurar o PolicyKit para permitir que membros de um determinado grupo sejam reinicializados; isto é, ser autorizado diretamente, evitando assim toda a questão de uma autenticação satisfatória para obter a autorização do super-usuário.

Crie um arquivo /etc/polkit-1/localauthority/50-local.d/50-local.pkla e adicione uma cláusula como:

[Allow reboot by booters group]
Identity=unix-group:booters
Action=Action=org.freedesktop.consolekit.system.restart-multiple-users
ResultAny=yes

Em seguida, execute o trabalho de um usuário com associação a esse grupo.

    
por 21.04.2016 / 16:43