Lancement script à distance par internet
freddy
-
freddy -
freddy -
Bonjour,
J'ai mis un script sur ma machine Linux qui me permet de monter une partition sur un PC distant.
Je souhaiterais pouvoir executer ce script à distance par l'intermediaire de mon serveur Web.
J'ai nommé mon script test.sh.
Or quand je suis sur Internet et que j'appelle ce lien, il me demande de l'enregistrer mais il n'execute rien. Comment faire?
Merci de votre aide
J'ai mis un script sur ma machine Linux qui me permet de monter une partition sur un PC distant.
Je souhaiterais pouvoir executer ce script à distance par l'intermediaire de mon serveur Web.
J'ai nommé mon script test.sh.
Or quand je suis sur Internet et que j'appelle ce lien, il me demande de l'enregistrer mais il n'execute rien. Comment faire?
Merci de votre aide
A voir également:
- Lancement script à distance par internet
- Allumer pc à distance - Guide
- Script vidéo youtube - Guide
- Gps sans internet - Guide
- Complete internet repair - Télécharger - Web & Internet
- Mon pc rame sur internet - Guide
4 réponses
Tu ne peux pas exécuter un script shell directement par un serveur web.
Mais tu peux écrire une page en PHP avec les fonctions : exec, shell_exec ou system qui te le permettrons
Mais tu peux écrire une page en PHP avec les fonctions : exec, shell_exec ou system qui te le permettrons
Euh oui...
Dans mon script voila ce que j'ai mis :
#!/bin/sh
mount -t smbfs -o username=xxxxxxx,password=xxxxxxx \\\\nom_du_serveur\\partition repertoire/
Il fonctionne bien lorsque je le lance directement par Linux
J'ai essayé par php avec exec ou shell_exec mais il me fait rien.
Je pense peut etre à un problème de droit car il faut etre en root.
Comment pourrais-je faire?
Merci
Dans mon script voila ce que j'ai mis :
#!/bin/sh
mount -t smbfs -o username=xxxxxxx,password=xxxxxxx \\\\nom_du_serveur\\partition repertoire/
Il fonctionne bien lorsque je le lance directement par Linux
J'ai essayé par php avec exec ou shell_exec mais il me fait rien.
Je pense peut etre à un problème de droit car il faut etre en root.
Comment pourrais-je faire?
Merci
Salut Freddy (et les autres :P),
mount ne peut être lancé que par root ou des utilisateurs dans le groupe "operator". Si j'étais toi, je ne mettrai pas ton user sous lequel Apache se lance dans le groupe "operator" pour des motifs évidents de sécurité.
Voilà un peu d'inspiration pour ton problème.
http://lea-linux.org/dev/suid_scripts.html
Il n'est pas possible de rendre suid un script sh. C'est trop risqué. Si tu es allergique au langage C, il y a d'autres solutions... mais tout est très bien expliqué sur cette page.
Dal
mount ne peut être lancé que par root ou des utilisateurs dans le groupe "operator". Si j'étais toi, je ne mettrai pas ton user sous lequel Apache se lance dans le groupe "operator" pour des motifs évidents de sécurité.
Voilà un peu d'inspiration pour ton problème.
http://lea-linux.org/dev/suid_scripts.html
Il n'est pas possible de rendre suid un script sh. C'est trop risqué. Si tu es allergique au langage C, il y a d'autres solutions... mais tout est très bien expliqué sur cette page.
Dal
c'est un probleme de droit:
solution que je n'ai pas testé
mettre ds un .htacess et dire que qu'il exucute en root
faire un script qui monte au demarrage et le change grace au php
etc..
Si quelqu'un a solution merci de proposé