como fazer uma reinicialização do linux a partir do arquivo php
Eu tenho um usuário brftv no meu sistema linux e tenho www-data que executa o nginx.
do terminal posso deixar meu usuário brftv rodar
sudo /sbin/reboot
e funciona bem desde que adicionei o seguinte à seção "#user privilégio especificação do meu arquivo / etc / sudoers":
brftv ALL=NOPASSWD: /sbin/halt, /sbin/reboot, /sbin/poweroff
www-data ALL=NOPASSWD: /sbin/halt, /sbin/reboot, /sbin/poweroff
Mas quando meu arquivo php executa o seguinte código, nada acontece
exec('nohup sudo -u brftv /sbin/reboot');
Eu adicionei a linha www-data aos etc / sudoers acima, caso isso fosse necessário ao executar o exec () acima (embora eu o execute como -u brftv, mas não sou especialista em linux, apenas achei melhor estar seguro apenas em caso).
O arquivo php que executa este exec () é de propriedade de www-data, e o chmod é 777, portanto todos devem ter o privilégio de executá-lo.
Eu tentei rodar o arquivo php pelo navegador (seria executado pelo usuário www-data, eu assumo) e pelo terminal $php myFile.php
.
------------------- ATUALIZAÇÃO -----------------
eu fiz isso
sudo chmod u s /sbin/reboot
O que permite que todos os usuários do meu sistema executem o cmd de reinicialização sem senha. Funciona, mas eu prefiro não deixá-lo assim aberto, então a outra solução com / etc / sudoers seria melhor, se alguém tivesse uma dica de qual é o meu problema ...
Eu segui esse tuthttp://linux.byexamples.com/archives/315/how-to-shutdown-and-reboot-without-sudo-password/ e o segundo exemplo é basicamente o que eu consegui acima que não funcionou para mim ..