sudo é o caminho
Já considerou a execução do próprio script sob o sudo?
sudo sh .\myScript
Se você adicionar o script ao userlevel (coisas do rc), acho que ele também seria executado com privilégios de root.
Usando Java-GTK e Bash, criou um aplicativo que abre uma janela perguntando qual VPN usar. Ele armazena a saída em uma variável e a conecta. Então, se a conexão foi um sucesso, iniciou a transmissão.
Agora, eu configurei um script que pula 8.8.8.8 a cada hora a cada hora, se falhar, pinga a rede da minha escola. Se essa falha falhar na transmissão, ela reinicia a rede usando sudo service network-manager restart
. Em seguida, reconecta a VPN e, finalmente, reinicia a transmissão. (Eu sei que posso usar stop
/ start
mas eu escolho não). Após o uso, eu enfrentei e percebi que o sudo precisava da minha senha como administrador.
Eu pesquisei isso por quase uma semana, procurando por alguma maneira de dar privilégios de root, e vi centenas de avisos e comentários do tipo "sudo é assim". Eu examinei o arquivo sudoers, tentei e ele não funcionou (ele ainda solicita uma senha para as configurações mais básicas). Eu também olhei para a criação de um binário C dizendo um script para rodar com 0 uid, definindo que o binário C para chmod e chown root permissions. Sem sucesso. (Eu não tentei daemons como eu sei muito pouco de C.) (Principalmente Bash, e um pouco de Java).
Talvez um script / configuração na pasta / etc / network? Não me importo com respostas que funcionem fora do meu framework de script original, pois as precauções de segurança impedem que os scripts sejam enraizados.
PS. Eu não estou procurando por avisos como respostas, mas responde com avisos.
Tags networking bash root linux sudoers