sudo: não tty presente e nenhum programa askpass especificado (tentando iniciar o apachectl)

4

estamos executando o hudson para monitorar alguns trabalhos de shell. O problema é que o hudson executa todas as tarefas como usuário "hudson".

Tudo bem, exceto por alguns comandos especiais que exigem direitos de superusuário, como "chown" e "apachectl" Temos o seguinte arquivo inour sudoers: (visudo)

Defaults:hudson !requiretty
%hudson ALL = NOPASSWD: /usr/sbin/apachectl, /bin/chown

Mas isso nos dá o seguinte erro quando queremos chamar o apachectl -k de graça em nosso script de shell:

sudo: no tty present and no askpass program specified

Alguém tem alguma ideia de como podemos resolver isso?

    
por solsol 10.12.2010 / 16:45

2 respostas

3

[movido do comentário acima]

Seu script pode estar encontrando o apachectl binary em algum outro lugar em $PATH diferente de /usr/sbin/apachectl . Isso não corresponderia à sua entrada sudoers existente. Se você chamar o comando com um caminho explícito (por exemplo, usar /usr/sbin/apachectl no script, em vez de apenas apachectl ), verifique se está usando o caminho certo. Esta é uma boa prática em geral.

    
por 11.12.2010 / 06:03
0

Você deve usar o caminho completo (como por comentário).

Por exemplo /usr/sbin/apachectl não apenas apachectl no script!

Isso deve resolver o problema.

    
por 30.03.2015 / 19:41

Tags