executa um script como usuário não root

0

Eu quero executar um script, digamos some_script.sh (que requer permissões de root, contém alguns sudo do something em um loop for) como usuário não-root. Eu tenho um script como mostrado abaixo. Eu quero executar este script como root e usando isso eu quero executar o outro some_script.sh .

#!/bin/bash
while true
do
    if [ some conditioon ] 
    then
        sudo some_script.sh &
        sleep 30
    else
        exit 0
    fi
done

Nota

  • some_script.sh está em PATH e quero que continue a verificação a cada 30 segundos
  • Ele está sendo executado sem problemas se eu executar o some_script.sh do terminal como sudo some_script.sh , quando eu for executá-lo usando o script acima, ele executará seu trabalho parcialmente.

É possível fazer assim? se sim, quais são os problemas acima, me mostre uma maneira melhor.

Editar

por favor, dê uma olhada em esta . Por favor, leia some_script.sh como msgpass.sh dessa resposta.

    
por souravc 21.11.2013 / 03:22

1 resposta

0

Se você quiser que o script seja executado como root a cada 30 minutos, use o cron.

Edite o arquivo / etc / crontab para conter o seguinte:

#minute hour    mday    month   wday    user    command
*/30    *       *       *       *       root    some_script.sh
    
por Omegamormegil 21.11.2013 / 03:59