Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]PHP -> Bash wykonanie pliku
matx132
post 15.12.2010, 06:54:17
Post #1





Grupa: Zarejestrowani
Postów: 243
Pomógł: 19
Dołączył: 12.09.2005

Ostrzeżenie: (0%)
-----


Witam,
A więc tak chodzi o wykonanie pliku napisanego w bash z poziomu PHP, używałem exec ale niestety nie działa i nie wiem czemu.
przy łatwych zadaniach tylko ls czy innych exec działa ale jak już daję wywołanie pliku bash z parametrem to wyskakuje błąd funkcji exec (daje or die('bład')winksmiley.jpg

Czy ktoś ma pomysł jak to inaczej zrobić?

chodzi dokładnie o dodanie ip po wejściu w dany folder do pliku w systemie który reguluje reguły iptables

Pozdrawiam,
Go to the top of the page
+Quote Post
wookieb
post 15.12.2010, 07:29:05
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Kod?


--------------------
Go to the top of the page
+Quote Post
matx132
post 16.12.2010, 18:19:04
Post #3





Grupa: Zarejestrowani
Postów: 243
Pomógł: 19
Dołączył: 12.09.2005

Ostrzeżenie: (0%)
-----


  1. <?php
  2. echo exec('/etc/apache2/test.sh test') or die('awhat?!');
  3. ?>


a w test.sh jest po prost za pomocą echo wpisanie do pliku nowa linijka

exec działa a test,sh z putty też działa poprawnie
Go to the top of the page
+Quote Post
kiler129
post 16.12.2010, 18:23:43
Post #4





Grupa: Zarejestrowani
Postów: 566
Pomógł: 35
Dołączył: 21.06.2006

Ostrzeżenie: (0%)
-----


A probowales uzyc shell exec?


--------------------
flexiCMS v2 [|||||||+--] 75% done
Go to the top of the page
+Quote Post
matx132
post 16.12.2010, 20:35:34
Post #5





Grupa: Zarejestrowani
Postów: 243
Pomógł: 19
Dołączył: 12.09.2005

Ostrzeżenie: (0%)
-----


nadal jest błąd nawet po użyciu shell_exec
czy idzie "wydobyć" błąd jaki generuje shell_exec lub samo exec??
Go to the top of the page
+Quote Post
Quadina
post 16.12.2010, 21:50:39
Post #6





Grupa: Zarejestrowani
Postów: 200
Pomógł: 38
Dołączył: 1.12.2010
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Jeżeli na serwerze masz zakaz używania takich poleceń działających na shellu to niestety one będą zwracać po prostu 1 bez uruchamiania czy rzucania wyjątkiem, czy czymkolwiek co można przechwycić i obsłużyć. Wydaje mi się, że właśnie taką sytuacje masz tutaj.


--------------------
Warsztat: NetBeans 7.2 Beta, PHP, MySQL, PostgreSQL, Symfony (<=1.4), Diem, Java, Sieci neuronowe
Go to the top of the page
+Quote Post
matx132
post 16.12.2010, 21:54:57
Post #7





Grupa: Zarejestrowani
Postów: 243
Pomógł: 19
Dołączył: 12.09.2005

Ostrzeżenie: (0%)
-----


mało realne to jest VPS wszystko zostało ustawione i jak wcześniej pisałem np exec("ls") działa
Go to the top of the page
+Quote Post
mls
post 17.12.2010, 00:43:51
Post #8





Grupa: Zarejestrowani
Postów: 677
Pomógł: 89
Dołączył: 31.08.2003
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Uprawnienia, zapewne. To co jest w /etc zwykle wymaga praw roota, PHP zaś z rootem w zasadzie nigdy nie jest uruchamiane...


--------------------
Go to the top of the page
+Quote Post
matx132
post 17.12.2010, 17:30:54
Post #9





Grupa: Zarejestrowani
Postów: 243
Pomógł: 19
Dołączył: 12.09.2005

Ostrzeżenie: (0%)
-----


niestety prawa są ok bo plik nawet dałem w folderze ze skryptem index.php
Go to the top of the page
+Quote Post
Quadina
post 17.12.2010, 20:50:02
Post #10





Grupa: Zarejestrowani
Postów: 200
Pomógł: 38
Dołączył: 1.12.2010
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Sprawdź jeszcze usera i grupę skryptu, który chcesz uruchomić. Nie masz przypadkiem safe_mode włączone? Sprawdź konstrukcję:
  1. $tablica = array();
  2. exec('./test.sh test',$tablica);
  3. echo implode("\n",$tablica);

Spróbuj też w test.sh dodać coś w stylu echo {date} żeby coś ci się mogło zwrócić do exec.

Kurcze, na wszystkie sposoby odpalam u siebie taką konstrukcję i Twoją z posta wyżej i odpala mi się bez problemu.


--------------------
Warsztat: NetBeans 7.2 Beta, PHP, MySQL, PostgreSQL, Symfony (<=1.4), Diem, Java, Sieci neuronowe
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.04.2024 - 15:03