Posso automatizar a atualização / atualização com o sudo dessa maneira?

1

Por favor, considere este código:

alias fast='echo "password" | sudo -S apt-get update && sudo -S apt-get upgrade'

Eu ainda não tive um problema em usá-lo, mas é possível que, se a primeira etapa, apt-get update , levar muito tempo, a senha expiraria quando os comandos apt-get upgrade finalmente fossem executados?

    
por Scott Severance 16.06.2012 / 08:46

3 respostas

2
  

mas é possível que, se a primeira etapa, apt-get update , levar muito tempo, a senha expiraria no momento em que os comandos apt-get upgrade finalmente fossem executados?

A resposta é sim, sudo pode expirar e pedir a senha novamente.

  • Outro método que ainda é inseguro (mas pelo menos não requer que você escreva uma senha para o arquivo) é descrito em Como executar um aplicativo usando o sudo sem uma senha?

  • Se você quiser prosseguir com uma abordagem em que você escreve sua senha em texto não criptografado, considere encadear o comando e usar sh para executá-lo:

    echo password | sudo sh -c "apt-get update && apt-get upgrade"
    

    Dessa forma, sudo exige que você insira a senha apenas uma vez e sh é executado como raiz. Então, todos os programas executados por sh são executados automaticamente como root.

  • Finalmente, você pode passar a senha duas vezes para os programas separados:

    echo password | sudo apt-get update && echo password | sudo apt-get upgrade
    
por Lekensteyn 16.06.2012 / 09:37
1

Tenho certeza que o tempo limite para o sudo é de 15 minutos.

Você pode mudar isso

sudo visudo

Adicione o tempo limite a esta linha

Defaults        env_reset

Então por 20 minutos

Defaults        env_reset,timestamp_timeout=20

link

    
por 23 93 26 35 19 57 3 89 16.06.2012 / 09:12
0

Estou no celular agora, então não posso escrever uma resposta detalhada. No entanto, há outra possibilidade que pode ser um compromisso adequado.

Você pode configurar o sudo para não pedir uma senha para o comando apt-get. Você define isso usando o comando visudo. Como não tenho acesso às minhas caixas de Linux agora, não posso dizer como fazer isso, mas você pode tentar ler as man pages para sudoers, visudo e qualquer coisa referenciada por essas páginas.

ATENÇÃO: Fazer isso poderia permitir que qualquer um pudesse executar qualquer comando do apt-get. Você terá que julgar se a conveniência desse método supera o risco de segurança adicional.

    
por Scott Severance 16.06.2012 / 14:36