Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1796 connectés 

  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Executer .sh par php

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Executer .sh par php

n°634481
Kyle
Posté le 07-02-2004 à 14:53:28  profilanswer
 

Je voudrais executer un fichier .sh avec un script php.
 
J'utilise la fonction passthru() car elle affiche les messages d'erreur ; sinon j'utilise exec()
 
voici le php :
 

Code :
  1. passthru("test.sh" );


 
test.sh :
 

Code :
  1. #!/bin/bash
  2. cat /usr/local/apache/conf/httpd.conf > httpd.conf.temp


 
Et la il me dit : "test.sh: httpd.conf.temp: Permission non accordée"
 
J'ai aussi testé juste un "cat /usr/local/apache/conf/httpd.conf" et la ca fonctionne !
 
J'ai vérifié les droits, tout me parait normal.
 
Une idée ?  :??:

mood
Publicité
Posté le 07-02-2004 à 14:53:28  profilanswer
 

n°634526
Evadream -​jbd-
Posté le 07-02-2004 à 15:45:03  profilanswer
 

kyle a écrit :


Code :
  1. #!/bin/bash
  2. cat /usr/local/apache/conf/httpd.conf > httpd.conf.temp


 
Et la il me dit : "test.sh: httpd.conf.temp: Permission non accordée"


 
Tu le fais où ton cat ? Parce que tu n'a pas les droits dans le répertoire courant. Je ferais :
 

Code :
  1. #!/bin/bash
  2. cd unrepertoireoujailesdroitsenecriture
  3. cat /usr/local/apache/conf/httpd.conf > httpd.conf.temp


Message édité par Evadream -jbd- le 07-02-2004 à 15:47:25
n°634533
Kyle
Posté le 07-02-2004 à 15:52:24  profilanswer
 

c'est pas possible dans le répertoire home du user qui execute le fichier php ?

n°634535
Evadream -​jbd-
Posté le 07-02-2004 à 15:57:06  profilanswer
 

Es-tu sur du user qui éxècute le fichier php ? Si oui, es-tu sur que tu te trouves bien dans son répertoire ? Si oui, le user a t'il  les droits sur son répertoire ?


Message édité par Evadream -jbd- le 07-02-2004 à 15:57:22
n°634537
Kyle
Posté le 07-02-2004 à 15:59:53  profilanswer
 

Je viens de créé un repertoire "temp" avec comme droits 777 et ca fonctionne.
Est-il possible de passer en root par une commande "exec()" ?

n°634540
Evadream -​jbd-
Posté le 07-02-2004 à 16:03:53  profilanswer
 

Ok. Essaye de changer les droits en 755 pour voir si tu arrives à écrire dedans. Si tu n'y arrives pas, le script n'est pas éxecuté par le user alors, mais par un autre qui n'a pas les droits (au hasard, le user qui lance apache).
 
Pour ta question, je ne connais pas le php, mais ca m'étonnerait fortement que :) Tu aimes pas la solution de créer un répertoire avec les droits adéquats ?


Message édité par Evadream -jbd- le 07-02-2004 à 16:08:17
n°634542
Kyle
Posté le 07-02-2004 à 16:06:21  profilanswer
 

en effet apres un chmod 755, permision refusée, surement que les commandes se font en nobody/nobody
 
En fait ce serait pour modifier le httpd.conf de apache, il me faut passer sous un autre user pour faire ca...
 
A moins qu'il y est une autre solution ;)

n°634548
Evadream -​jbd-
Posté le 07-02-2004 à 16:09:15  profilanswer
 

Tu peux configurer Apache de tel sorte à aller lire son fichier de configuration dans le répertoire de ton user, non ? Je sais pas si c'est une bonne solution, mais ca devrait fonctionner :)

n°634561
Kyle
Posté le 07-02-2004 à 16:21:37  profilanswer
 

bon j'ai donné les droits root.nobody au fichier httpd.conf et ca roule.
par contre, ca ne pose pas de soucis niveau secu ?

n°634562
Evadream -​jbd-
Posté le 07-02-2004 à 16:26:45  profilanswer
 

J'ai pas tellement le recul pour t'en parler :) Mais à vue d'oeil c'est pas très secure. D'autres te répondront mieux que moi !

mood
Publicité
Posté le 07-02-2004 à 16:26:45  profilanswer
 

n°634574
Kyle
Posté le 07-02-2004 à 16:32:44  profilanswer
 

ok, merci ;)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Shell/Batch

  Executer .sh par php

 

Sujets relatifs
executer plusieurs commandes mysql qui sont liées ...Exécuter une fonction (ou sub) ASP ds un code JS
[java]Découpe de string pour exécuter la fonction associée[Help] executer un programme java
[PHP] Exécuter le Code d'un Fichier Extérieur dans une Page PHP ?Executer une macro a partir d'une autre
Comment exécuter une macro Excel avec paramètres depuis Word ?[asp.net sql] Executer un fichier .sql à partir d'une page .aspx
Executer deux requetes a la suite[MySQL] Executer plusieurs requètes avec OleDB
Plus de sujets relatifs à : Executer .sh par php


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR