Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: plik.php dodajacy zadaina do crona
Forum PHP.pl > Forum > PHP
dziobak
czy daloby sie (na pewno jakos sie da) przez skrypt php dodawac zadania do crona i je usuwac?? jezeli tak to w jaki sposob??

pozdrawiam
kosheen2k
hmm pewno tak.... ale apache musialby miec dostep do pliku crona, czyli musialbys dodac dla usera apache dostep do pliku cron.... bo z tego co mi wiadomo apache ma dostep do swoich plikow w katalogu /var/www/html i nic wiecej... wiec jesli to w czyms pomoze to prosze winksmiley.jpg

1. Musisz nadac prawa dla apache zeby mial dostep do pliku crontab (bodajze to jest jedyne ograniczenie)
2. a potem tylko fopen z "w" i wio winksmiley.jpg reszta nalezy do Ciebie

Pozdrawiam
dziobak
Cytat
1. Musisz nadac prawa dla apache zeby mial dostep do pliku crontab (bodajze to jest jedyne ograniczenie)
2. a potem tylko fopen z "w" i wio reszta nalezy do Ciebie


co do punktu 2. oraz dla zainteresowanych edycja wyglada w taki sposob (oczywiscie to działa):

  1. <?php
  2.  
  3. $file = file_get_contents('plik');
  4. echo "<pre>".$file."</pre>";
  5.  
  6. $string2 = '* */5 * * * user /sciezka/do/pliku >/dev/null';
  7. $string3 = '#PLEASE DO NOT REMOVE THIS LINE.';
  8.  
  9. if(strpos($file, $string2) !== false)
  10. {
  11. $newcron = str_replace($string2, $string3, $file);
  12. echo "<pre>".$newcron."</pre>";
  13. file_put_contents('plik', $newcron);
  14. echo "Exchanged $string2 => $string3n";
  15. }
  16. elseif(strpos($file, $string3) !== false)
  17. {
  18. $newcron = str_replace($string3, $string2, $file);
  19. echo "<pre>".$newcron."</pre>";
  20. file_put_contents('plik', $newcron);
  21. echo "Exchanged $string3 => $string2n";
  22.  
  23. }
  24. else
  25. {
  26. $newcron .= $file."nn".$string2;
  27. echo "<pre>".$newcron."</pre>";
  28. file_put_contents('plik', $newcron);
  29. echo "Added string $string2n";
  30. }
  31. ?>



a co do 1. to w jaki sposob moge nadac prawa?? bo na linuksie za bardzo sie nie znam a chce adminowi zaszpanowac tongue.gif tongue.gif biggrin.gif biggrin.gif
UDAT
Cytat(dziobak @ 22.11.2006, 16:00:39 ) *
a co do 1. to w jaki sposob moge nadac prawa?? bo na linuksie za bardzo sie nie znam a chce adminowi zaszpanowac tongue.gif tongue.gif biggrin.gif biggrin.gif


Ty tak na poważnie??

Prawa do CRON'a może dodać tylko root, chyba że należysz już do tej grupy.
Co to by było jak by każdy mógł zmienić sobie prawa?
dziobak
wiem ze prawa moze tylko root zmienic ale ja chce tylko poznac komende w jaki sposob mozna to zrobic... przeciez gdybym sam mogl to zrobic to co by byl za problem jak bym na poczatku i na koncu pliku do edycji crona napisal

  1. <?php
  2. system('chmod 666 /etc/crontab');//to na poczatku
  3.  
  4. system('chmod 644 /etc/crontab');//to na koncu
  5. ?>


az taki glupi to ja nie jestem tongue.gif tongue.gif tongue.gif tongue.gif
bili.pl
Wątpię, żeby taki numer przeszedł, że admin da Ci dostęp w ten sposób do crona. Możesz napisać skrypt, który będzie się logował na twój panel administracyjny serwera wirtualnego (bo wnioskuję, że taki posiadasz) i w nim masz pewnie możliwość dodawania nowych zadań do crona. Więc, logujesz się, a potem to już tylko wysłanie formularzy itp. tongue.gif
dziobak
nie martw sie o to... admin to moj kumpel tongue.gif wiec jezeli ktos wie jaka jest komenda lub jakie sa komendy na nadanie apatchowi praw do crona (o ile jest to mozliwe) pszeszukalem google pod tym wzgledem ale nie znalazlem, moze nie to wpisywalem co mialem... :/
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.