Eu estou tentando desligar meu RaspberryPi rodando Raspbian de um script php em execução no servidor web lighttpd. shell_exec("sudo /sbin/shutdown -h now 2>&1");
Eu adicionei lighttpd ALL=(ALL) NOPASSWD: /sbin/shutdown
ao meu arquivo / etc / sudoers e verifiquei Defaults !requiretty
está definido.
Eu ainda recebo "sudo: no tty presente e nenhum programa askpass especificado" ao executar o script.
Alguém pode me ajudar por favor? Obrigado!
shell_exec
função em vez deexec
desde que é um comando shell (acho que é assim que funciona). Eu não estou 100% de certeza (daí o comentário), mas pode valer a pena tentar.2>&1
) requer uma concha; tente remover isso do comando e veja se você obtém um resultado diferente.echo `whoami`
; Pode ser www-data ou httpRespostas:
O Lighttpd pode não estar sendo executado como usuário
lighttpd
.Em um script PHP, escreva o seguinte para descobrir com que usuário ele é executado:
Pode ser
www-data
ouhttp
em vez de.fonte