|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Oct 2001
Città: Latina (LT)
Messaggi: 413
|
[php&linux] problema con i permessi e lo shell_exec()
Salve ragazzi ripropongo qui un post che ho messo nella sezione linux:
http://www.hwupgrade.it/forum/showth...5#post10515065 per la mia tesi sto facendo un lavoro in php sotto linux, ed ho la necessita di laciare alcuni make per un applicazione. Dunque dopo che creo la cartela con l'applicazione lancio il suo make. duque la cartella ha come proprietario www-data (cioè apache) e gli assegno tutti i permessi cioè 777. il make file va a lanciare dei comandi in java in un altra cartella alla quale ho dato ricorsivamente lo stesso tutti i pesmessi (777) ed ho cambiato ricorsivamente proprietaio e gruppo in www-data. Ora la cosa che mi fa impazzire è che se faccio laciare il make da www-data la sua esecuzione termina a metà. mentre se lo lacio come utente normale da terminale, va tutto ok. Con queste premesse sono quesi certo che si un problema di permessi o privilegi per eseguire quel make. ma non riesco e trovare una soluzione. Sapreste darmi qualke dritta? Grazie a tutti.
__________________
Ho concluso positivamente affari con alechino,pub111,rsd_oilpoint,Maninabox Solo due cose sono infinite, l'universo e la stupidità umana, e non sono sicuro della prima. (A.Einstein) |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Oct 2001
Città: Latina (LT)
Messaggi: 413
|
up...
![]()
__________________
Ho concluso positivamente affari con alechino,pub111,rsd_oilpoint,Maninabox Solo due cose sono infinite, l'universo e la stupidità umana, e non sono sicuro della prima. (A.Einstein) |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Jun 2004
Città: Catania
Messaggi: 88
|
si blocca a metà perchè ci sara qualche file con permessi che l'utente apache non può leggere, scrivere o eseguire.
__________________
Mic |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Oct 2001
Città: Latina (LT)
Messaggi: 413
|
purtroppo non è così, perchè ricorsivamente ho cambiato tutti i permessi ed i proprietari dei file...
__________________
Ho concluso positivamente affari con alechino,pub111,rsd_oilpoint,Maninabox Solo due cose sono infinite, l'universo e la stupidità umana, e non sono sicuro della prima. (A.Einstein) |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Oct 2001
Città: Latina (LT)
Messaggi: 413
|
dunque ragazzi ecco la situazione se eseguo da terminale il make và tutto ok ed ecco l'output:
ric@PortatileLinux:~/tesi/TesiCochi/esercizi/somma2$ make && pwd # building the makefile... java -classpath /home/ric/tesi/TestSystem/TestSystem/TestBuilder/Bin/org/jdom.jar:/home/ric/tesi/TestSystem/TestSystem/TestBuilder/Bin:/home/ric/tesi/TestSystem/TestSystem/Translator/antlr-2.7.3/antlr.jar:/home/ric/tesi/TestSystem/TestSystem/Translator/C_Lexer/cgram/grammars:/home/ric/tesi/TestSystem/TestSystem/Translator/Bin:/usr/share/java/xalan2.jar:/usr/share/java/xml-apis.jar:/usr/share/java/xercesImpl.jar TestBuilder ./Esercizi ./run /home/ric/tesi/TestSystem/TestSystem ./Tests/OK /home/ric/tesi/TestSystem/TestSystem/TestBuilder # running the makefile... make -f ./run make[1]: Entering directory `/home/ric/tesi/TesiCochi/esercizi/somma2' mkdir -p ./Esercizi/ric/Prep gcc -E -I /home/ric/tesi/TestSystem/TestSystem/TestSystem/c_include Esercizi/ric/es.c > Esercizi/ric/Prep/es.c Esercizi/ric/es.c:3:2: warning: no newline at end of file mkdir -p ./Esercizi/ric/Traced java -classpath /home/ric/tesi/TestSystem/TestSystem/Translator/antlr-2.7.3/antlr.jar:/home/ric/tesi/TestSystem/TestSystem/Translator/C_Lexer/cgram/grammars:/home/ric/tesi/TestSystem/TestSystem/Translator/Bin tracer -trace -t ./Tests/redirections.txt ./Esercizi/ric/Prep/es.c cp ./Esercizi/ric/Prep/*.traced.c ./Esercizi/ric/Traced gcc -I /home/ric/tesi/TestSystem/TestSystem/TestSystem/c_include -fexceptions -c -w Esercizi/ric/Traced/es.traced.c -o Esercizi/ric/Traced/es.traced.o || true g++ -z muldefs /home/ric/tesi/TestSystem/TestSystem/TestSystem.lib -l cppunit -l dl -L LIBDIR ./Esercizi/ric/Traced/es.traced.o ./Tests/Tests.o ./Tests/Redirections.o ./Tests/HelperFunctions.o ./Tests/OK/Traced/funz_OK.traced.o ./Tests/dummy.o -o ./Results/ric.exe || true /usr/bin/ld: Warning: size of symbol `somma' changed from 74 in ./Esercizi/ric/Traced/es.traced.o to 259 in ./Tests/dummy.o (ulimit -f 1024 ; ./Results/ric.exe ric ./Results/ric.xml > ./Tests/out.txt) || true output:./Results/ric.xml ...OK..... somma2Generico ...OK..... somma2java -classpath /home/ric/tesi/TestSystem/TestSystem/XMLResumer/Bin:/home/ric/tesi/TestSystem/TestSystem/XMLResumer/Bin/org/jdom.jar:/home/ric/tesi/TestSystem/TestSystem/XMLResumer/Bin/org/xalan.jar:/home/ric/tesi/TestSystem/TestSystem/Bin/org/serializer.jar:/home/ric/tesi/TestSystem/TestSystem/Bin/org/sxercesImpl.jar:/home/ric/tesi/TestSystem/TestSystem/Bin/org/xml-apis.jar XMLResumer ./Results ./Results/Html ./project.xml Building riccardo_resume.xml... Building Student_resume.xml... Building ric_resume.xml... Building index.html from index.xml... Building riccardo_resume.html from riccardo_resume.xml... Building Student_resume.html from Student_resume.xml... Building ric_resume.html from ric_resume.xml...make[1]: Leaving directory `/home/ric/tesi/TesiCochi/esercizi/somma2' /home/ric/tesi/TesiCochi/esercizi/somma2 ric@PortatileLinux:~/tesi/TesiCochi/esercizi/somma2$ tutto và a buon fine. vediamo ora l'esecuzione con il php: ecco il codice: $pathcorr=realpath("../esercizi/".$esercizio); $comando3="chmod -R 777 ".$pathcorr; $comando="cd ".$pathcorr." && make && pwd"; echo shell_exec("$comando3"); echo shell_exec("$comando"); ecco l'output a schermo: # building the makefile... java -classpath /home/ric/tesi/TestSystem/TestSystem/TestBuilder/Bin/org/jdom.jar:/home/ric/tesi/TestSystem/TestSystem/TestBuilder/Bin:/home/ric/tesi/TestSystem/TestSystem/Translator/antlr-2.7.3/antlr.jar:/home/ric/tesi/TestSystem/TestSystem/Translator/C_Lexer/cgram/grammars:/home/ric/tesi/TestSystem/TestSystem/Translator/Bin:/usr/share/java/xalan2.jar:/usr/share/java/xml-apis.jar:/usr/share/java/xercesImpl.jar TestBuilder ./Esercizi ./run /home/ric/tesi/TestSystem/TestSystem ./Tests/OK /home/ric/tesi/TestSystem/TestSystem/TestBuilder è evidente che l'esecuzione del make si bloccchi e non vada a buon fine tantè che il pwd non viene eseguito! Non riesco a capire a cosa sia dovuto, spero possiate darmi qualche suggerimento... grazie a tutti. p.s. allego anche il makefile
__________________
Ho concluso positivamente affari con alechino,pub111,rsd_oilpoint,Maninabox Solo due cose sono infinite, l'universo e la stupidità umana, e non sono sicuro della prima. (A.Einstein) |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 18:41.