Problème PHP / Cron serveur / useradd

Problème PHP / Cron serveur / useradd - Shell/Batch - Programmation

Marsh Posté le 05-11-2010 à 17:52:57    

Bonjour à tous,
 
J'ai un léger soucis avec un script php.
En fait, je voudrais lancer en tache cron, un script php qui vérifie dans une base s'il y a des comptes FTP à créer.
 
S'il y en a, il me les créés grace à la fonction useradd.
 
En utilisant OVHM (serveur OVH), si j'exécute la commande manuellement :
 
/usr/local/php5/bin/php /home/genereft/www/cron.php > /erreur.txt
 
Tout fonctionne comme il se doit.
 
En revanche, la tâche cron qui tourne toutes les 1 minute, me retourne une erreur 127...  
 
Pour info, elle est bien exécuté en tant que root, je ne vois donc pas d'où peut provenir le soucis...
 
Voici le code de mon script php :
 

Code :
  1. <?php
  2. require_once('config.php');
  3. $res = mysql_query('SELECT * FROM listing WHERE etat!="Terminé"');
  4. while($data = mysql_fetch_array($res))
  5. {
  6.     if($data['etat']=='Création')
  7.     {
  8.         $s1="<Aa.Bb0CcDd1EeFf2GgHh>IiJj3KkLl4MmNn!Oo4PpQq5RrSs6TtUu7VvWw8XxYyZz9";
  9.         $mot_de_passe= crypt($data['mot_de_passe'],substr ($s1,( 70 * rand),1).substr ($s1,( 70 * rand),1));
  10.         passthru('useradd -m -k /home/genereft/www/ftp -p '.escapeshellcmd($mot_de_passe).' -s /bin/false -d /home/genereft/www/dossier_ftp/'.$data['pseudo'].' '.$data['pseudo'], $return);
  11.         mysql_query('UPDATE listing SET etat="Terminé" WHERE identifiant="'.$data['identifiant'].'"');
  12.     }
  13.     elseif($data['etat']=='Suppression')
  14.     {
  15.         passthru('userdel -r '.$data['pseudo']);
  16.         mysql_query('DELETE FROM listing WHERE identifiant="'.$data['identifiant'].'"');
  17.     }
  18. }
  19. ?>


 
En revanche les fonctions Exec / System, eux ne fonctionnent pas, même en lancement en ligne de commande ;)
 
Merci d'avance pour vos répondre.
 
Anthony

Reply

Marsh Posté le 05-11-2010 à 17:52:57   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed