Como você executa um comando com sudo em '~ / .profile'?

2

É uma prática ruim executar um comando que requer sudo em ~/.profile ?

Se realmente quiser fazer isso, como posso executar o comando na reinicialização do Ubuntu?

  • faz o comando rodar com sudo e sob minha conta de usuário não requer senha, editando /etc/sudoers ?

  • forneça minha senha no comando com sudo em ~/.profile , por echo <passwd> | sudo -S <mycommand> ?

Eu não verifiquei se a primeira maneira funciona, porque ainda estou aprendendo como fazer isso.

A segunda maneira parece levantar sérias preocupações de segurança, e provavelmente o mínimo que eu quero ir.

Obrigado.

    
por Tim 01.04.2018 / 15:25

1 resposta

3

Se você colocar o comando em seu ~ / .profile, ele será executado toda vez que você iniciar um shell de login. Alguns emuladores de terminal permitem que você use um shell de login para cada janela de terminal. Você quer que seu comando seja executado com frequência?

Se você quiser usar o sudo para esse comando sem digitar uma senha, use o comando visudo com sudo visudo (ou, para usar seu editor favorito, use sudo -E visudo ). > NÃO EDITAR / etc / sudoers DIRETAMENTE .

Adicione uma linha como esta:

tim  ALL=(ALL) NOPASSWD: /path/to/my/command

O pedido é importante no arquivo sudoers, portanto, adicione-o abaixo desta linha: root ALL=(ALL:ALL) ALL

No entanto, se você quiser que ele seja executado somente quando o sistema for inicializado, adicione-o a /etc/rc.local e você não precisa se preocupar com o sudo.

    
por 01.04.2018 / 16:28