Você definiu NOPASSWD
para o script /home/mukesh/Desktop/connect.sh
, e não para qualquer item dentro dele que exija sudo
password.
Você precisa executar o script usando sudo
:
sudo /home/mukesh/Desktop/connect.sh
e, em seguida, remova sudo
do script:
#!/bin/bash
pppoe-start
É apenas um único comando e você pode adicionar esse comando a sudoers
(não é necessário um script separado):
mukesh ALL=(root) NOPASSWD: /path/to/pppoe-start
Observe também que a configuração do bit SETUID no script (executáveis interpretados) não funcionará.
Você também tem outro problema que é ter o bit executável definido para os outros, ou seja, qualquer usuário pode executar o arquivo, portanto você está sendo solicitado a sudo
password, pois as permissões gerais serão precedidas por especiais como sudo
. / p>
Para que você possa remover as permissões de execução para outras pessoas:
sudo chmod o-x /home/mukesh/Desktop/connect.sh
e agora sudo
não deve perguntar a senha.