Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Linux/PHP, problem z odpaleniem MAC i HTB
Dominis
post
Post #1





Grupa: Zarejestrowani
Postów: 77
Pomógł: 19
Dołączył: 13.02.2010

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


Witam.

Piszę pomocny panel do dodawania uzytkowników do sieci(udostępnianie internetu). Głównie skrypt ładuje z bazy danych dane (formułki iptables itd) do plików mac, htb, htb_dzien, htb_noc...

I teraz mój problem. Po zapisaniu tych plików na serwerze, trzeba je przeładować(odpalić), z konsoli robi sie to bardzo prosto, wpisujemy "./mac"(jeśli jestesmy w katalogu /etc/init.d) i tak z każdym plikiem. I wszystko działa, ale chciałem żeby ten pliki automatycznie się "przeładowywały" ze skryptu php.

Do tego użyłem funkcje exec:

Kod
exec('../../../etc/init.d/mac');

i tak z kolejnymi plikami pokoleji.
Niestety nie wykonuje mi tego pliku.

to napisałem mały prosty skrypt pod basha, żeby sprawdzić czy funkcja exec działa na serwerze:
Kod
#!/bin/sh

cd /etc/init.d;./mac
cd /etc/init.d;./htb_dzien

echo 'lol';


z php uruchamiam to funkcja exec:
Kod
exec('./panel.sh', $ans)
foreach($ans as $line)
{
echo $line;
}


Na stronie wyświetla mi się tylko lol, niestety dalej nie odpala tych plików, a jak wykonuje ten skrypt z terminala
Kod
./panel.sh

to oczywiście działa.

Prawa dostepu na czas testu ustawiłem na 777, do katalogów, jak i plików, gdzie znajdują sie mac, htb... jak i cały katalgo www.

Mam nadzieję ze dobrze wytłumaczyłem, na czym polega problem.
Z góry dziękuje za zainteresowanie.

Ten post edytował Dominis 13.02.2010, 22:22:34
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Dominis
post
Post #2





Grupa: Zarejestrowani
Postów: 77
Pomógł: 19
Dołączył: 13.02.2010

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


Dziękuje wszystkim za pomoc, problem chyba rozwiązany.

Posłuchałem 'ucho' i użyłem sudo.

nie wiem na ile to jest bezpieczne co zrobilem, ale działa...

w /etc/sudoers dopisalem:
Kod
www-data ALL= NOPASSWD: /etc/init.d/mac
www-data ALL= NOPASSWD: /etc/init.d/htb_dzien


a potem w php:
Kod
system("sudo /etc/init.d/htb_dzien");
system("sudo /etc/init.d/mac");


Pozdrawiam, Dominik
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 17.10.2025 - 13:23