Existe uma maneira de executar o sudo sem executar outro comando desnecessário?

5

Eu queria executar dois comandos sudo, canalizando a saída de um para o outro. No entanto, quando eu não inseri minha senha para o sudo recentemente, ela me pede a senha. Os pipes e dois sudos parecem estragar tudo, então não consigo digitar minha senha corretamente.

Minha solução para isso é rodar "sudo ls" ou qualquer outra coisa que solicite minha senha, para que os comandos canalizados funcionem sem me pedir para inseri-la. Isso me fez pensar se havia uma maneira "correta" de executar o sudo, de modo que você não estivesse executando outro comando inútil. A manpage para o sudo parece não dizer nada sobre isso.

    
por zymhan 17.12.2014 / 16:03

2 respostas

5

O que você está procurando é sudo -v . Na página do manual:

-v, --validate
          Update the user's cached credentials, authenticating the user
          if necessary. 

(E a contraparte para remover explicitamente as credenciais: sudo -k )

    
por 17.12.2014 / 16:07
-1

Adicionando à resposta da Anthon, se você tiver acesso root ao servidor, você pode adicionar NOPASSWD: na linha onde você definiu seu usuário em /etc/sudoers . Quando NOPASSWD: for adicionado, o sudo não solicitará a senha.

Se esta é sua linha atual:

myuser ALL=(ALL) <commands>

altere para:

myuser ALL=(ALL) NOPASSWD: <commands>

P.S: use visudo para editar o arquivo / etc / sudoers.

    
por 17.12.2014 / 16:11

Tags