je voudrais pouvoir rebooter mon serveur à partir d'un script en PHP installé sur celui-ci.
J'ai essayé le code suivant :
exec("shutdown -r +3 -u {root} -p {password}", $reponse);
...mais ça ne marche pas.Merci d'avance de votre aide.
Philippe
exec("shutdown -r +3 -u {root} -p {password}", $reponse);
...mais ça ne marche pas.
Code : Tout sélectionner
exec("shutdown -r +3 -u {root} -p {password} 2>&1", $reponse);
print_r ($reponse);Il n'y a pas de paramètres -u ou -p à la commande shutdownexec("shutdown -r +3 -u {root} -p {password}", $reponse);
Code : Tout sélectionner
exec("sudo shutdown -r +3", $reponse);J'ai fait ce que tu as dit, j'ai autoriser les admin a executé shutdown sans mdp , mais ça ne fonctionne pas ! Pas moyen de reboot ce foutu pc en php !
Le service Apache est probablement exécuté en tant que l'utilisateur nobody, www-data ou apache. Ces utilisateurs ne peuvent exécuter la commande shutdown, seul root ou un utilisateur privilégié peut le faire.
Tu dois ajouter l'utilisateur d'Apache au fichier /etc/sudoers et autoriser l'usage de la commande shutdown via sudo sans password.
Voici un guide pour la gestion de sudoers:
https://help.ubuntu.com/community/Sudoers
Ton script deviendra alors:Code : Tout sélectionner
exec("sudo shutdown -r +3", $reponse);
Code : Tout sélectionner
sudo visudo
Code : Tout sélectionner
$ egrep 'APACHE_RUN_(USER|GROUP)' *Code : Tout sélectionner
$ ps -C apache2 -o ruser,rgroupExcusez moi d'avoir mais autant de temp a répondre, je suis sous debian (je crois, c'est un serveur OVH) et je ne trouve pas /etc/apache2/Apparemment, il n'y a que les utilisateurs du groupe nobody qui penvent faire un shutdown.
Quel est le nom d'utilisateur et de groupe de ton serveur apache? Dans le répertoire de configuration d'Apache (ça dépend de ta distro mais sans doute dans /etc/apache2/ ) fait:ou bien (dans n'importe quel répertoire):Code : Tout sélectionner
$ egrep 'APACHE_RUN_(USER|GROUP)' *Code : Tout sélectionner
$ ps -C apache2 -o ruser,rgroup
Code : Tout sélectionner
ps -C apache -C httpd -o ruser,rgroup