Se connecter avec
S'enregistrer | Connectez-vous

Scripts php et shell

Dernière réponse : dans Programmation

Bonjour,
J'ai crée une page php qui me permet de faire le redémarrage de certains services d'une machine Unix. par exemple, les services Ldap, hylafax, postfix, dovecot...
Je sais que je dois utilisé pour ça la commande "service 'nom_du_service' Restart"
et aussi
  1. passthru("./urgent.sh $ch $mdp",$erreur);

or je ne sais pas quoi mettre comme paramètre pour passthru et aussi quoi mettre dans le fichier urgent.sh

merci pour votre aide

Autres pages sur : scripts php shell

Lassé par la pub ? Créez un compte
Expert Programmation

Pour ce qui est de passthru je crois que tout y es (il n'y a que 2 paramètres pour cette fonction ^^). En ce qui concerne urgent.sh, si j'etais toi je mettrai tout simplement les commandes de redémarrage de tes services ("/etc/init.d/dovecot restart" du moins si tes services sont dans ce dossier après c'est a toi de voir).
En revanche, pourrais tu préciser pourquoi il y a $ch et $mdp après l'appel de urgent.ch.

Ah et aussi, je mettrais le chemin absolu en ce qui concerne urgent.sh, mais c'est ma rigueur excessive qui le veut :D 
Expert Programmation

Alors moi je dis Attention !
A priori, pour redémarrer un service, il faut être loggué en tant que root (ou utiliser sudo), et si tu veux que php exécute ton script (et que ça fonctionne), il faut donc donner les droits à apache (ou l'utilisateur exécutant ce php). C'est très dangereux.

Lorsque je dois mettre en oeuvre de tels process, j'ai une petite ruse qui permet de limiter les risques: mon PHP génère un fichier texte, et par un crontab root (lancé toutes les minutes), je vais voir si le fichier existe. S'il existe, je lis son contenu (qui contient des contrôles d'intégrité) et en fonction je lance telle ou telle action.
Expert Programmation

Eh bien MOI, j'ai une autre méthode ..... ^^

Je vais physiquement sur le machine et avec mes petits doigts musclé je tape directement dans ma console :D 

...
...
...

Ok je sors.... :p 

PS : pas mal ton astuce crazycat ;)  je met ca dans un coin de mon cerveau (je devrais pas avoir de mal a trouver une place ^^)
Lassé par la pub ? Créez un compte
Tom's guide dans le monde