Linux droit d'execution sur un prog via php

Fermé
xunil2003 - Modifié par xunil2003 le 2/08/2012 à 20:10
Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 - 3 août 2012 à 16:05
Bonjour,

J'essaie depuis php de pouvoir démarrer, stopper, redémarrer un programme avec un script php, mais il y a un problème de droit.

Code php
          <!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"> 
  <head> 
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" /> 
    <title>Application</title> 
  </head> 
  <body> 
    <p><br /> 
    </p> 
    <p></p> 
    <table border="1" style="width: 100%"> 
      <tbody> 
        <tr><td>Amule<br /> 
          </td> 
          <td><form method="post" 
 action="" name="Application1-On"><input name="Application1-On" value="Démarrer" type="submit"><br /> 
          </td> 
          <td><form method="post" 
 action="" name="Application1-Off"><input name="Application1-Off" value="Arrêter" type="submit"><br /> 
          </td> 
          <td><form method="post" 
 action="" name="Application1-Off"><input name="Application1-re" value="Redémarrer" type="submit"><br /> 
          </td> 
        </tr> 
      </tbody> 
    </table> 
<?php 

if (isset($_POST['Application1-On'])){ 

$commande = "/etc/init.d/amule-daemon start"; 
exec("$commande", $top, $error ); 
echo nl2br(implode("\n",$top)); 
if ($error){ 
    exec('/usr/bin/top n 1 b 2>&1', $error ); 
    echo "Error: "; 
    exit($error[0]); 
} 
} 
?>  
    <p><br /> 
    </p> 
  </body> 
</html>


/var/log/apache2/error.log
root@debian:# cat /var/log/apache2/error.log 
sh: /etc/init.d/service: not found 
start-stop-daemon: unable to set gid to 1000 (Operation not permitted)


Comment puis je faire ?

Merci.

A voir également:

3 réponses

Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 144
2 août 2012 à 20:17
Salut,

En effet il faut être root pour cela... Ou alors en rajoutant www-data dans les sudoers (fichier dans /etc/sudoers)
0
xunil2003 Messages postés 761 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 24 mars 2024 14
Modifié par xunil2003 le 3/08/2012 à 12:13
Bonjour,

Je n'ai pas /etc/sudoers ???
serveur@debian:~$ ls -alF /etc/sudoers   
ls: impossible d'accéder à /etc/sudoers: Aucun fichier ou dossier de ce type   
Vous avez du nouveau courrier dans /var/mail/serveur   
serveur@debian:~$ 


Dans "/etc/init.d" J'ai copier "amule-daemon" en "service-amule-daemon"
cp -v /etc/init.d/amule-daemon /etc/init.d/service-amule-daemon

puis j'ai fait :
chmod u+s /etc/init.d/service-amule-daemon

Mais c'est bizarre j'ai le même message, logiquement la commande devrai être exécutée avec les permissions root. ?

root@debian:# ls -alF /etc/init.d/am*  
-rwxr-xr-x 1 root root 2554  4 juin   2010 /etc/init.d/amule-daemon*  
root@debian:# ls -alF /etc/init.d/ser*  
-rwsrwsrwt 1 root root 2554  2 août  19:23 /etc/init.d/service-amule-daemon*  
root@debian:# 



Merci.
0
Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 144
3 août 2012 à 14:25
Essaie de te logger en root et de taper : visudo

C'est étrange que tu n'aies pas ce fichier.
0
xunil2003 Messages postés 761 Date d'inscription mercredi 17 novembre 2004 Statut Membre Dernière intervention 24 mars 2024 14
3 août 2012 à 14:37
bonjour,

Y a pas le fichier ???
root@debian:# visudo
-bash: visudo : commande introuvable
root@debian:# 
0
Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 144
3 août 2012 à 16:05
Hm, étrange. Est-ce tu as le paquet "sudo" d'installé ?
0