Impossible d'exécuter un script sh via Php

Bonsoir,

Je sais que la question a été posée de nombreuses fois, mais aucune des solutions proposées ne marchent chez moi :frowning:

Donc voilà mon serveur apache tourne sous : www-data
Le script s’exécute via l’utilisateur : mk_fb

Le code de visudo pour mk_fb :

mk_fb ALL=(root) ALL
mk_fb ALL=(root) NOPASSWD:ALL

Et voici le code php pour exécuter le script suivant : /home/script_fb/pex_reload.sh

<?php	
function pex_reload() {
	$test=shell_exec('sudo -u root /home/script_fb/pex_reload.sh'); 
	return $test;
}
?>

Lorsque j’appel ma fonction via un bouton, il ne me renvoi aucune erreur, mais il n’exécute pas le script non plus :’(

Si ça peut aider code du script pex_reload.sh :

#!/bin/sh

screen -rd minekraft_fb -X -p0 eval "stuff 'pex reload'^m"

Merci d’avance pour votre aide,

Cordialement,

Sylitius.

quote="Sylitius"
Donc voilà mon serveur apache tourne sous : www-data
Le script s’exécute via l’utilisateur : mk_fb[/quote]
Comment tu fais ça ? Tu t’identifies pour lancer ta page php ?

Sinon, tout bêtement, en ligne de commande, que donne:
sudo /home/script_fb/pex_reload.sh
(le -u root, c’est la valeur par défaut, donc autant l’ignorer)

Je comprend pas ta question ?

Sujet résolu !
Au lieu d’utiliser un autre user je suis passé par celui qui gère apache :slightly_smiling:

C’est ce que te disait matt, comment t’identifiais tu en tant que mk_fb?

Sinon, en donnant tous les droits à www-data, tu ouvres une porte béante dans ton serveur.

met

ce sera déjà mieux.