Ubuntu 11.10 Cron munka, segítség!?

Ubuntu 11.10 Cron munka, segítség!?
2012-03-05T11:19:58+01:00
2012-03-05T12:35:00+01:00
2022-07-19T03:51:41+02:00
dannystyle
Sziasztok!
Van egy Ubuntu 11.10 server oprendszerrel ellátott gépem ( mindenféle service-szel - apache ftp ... stb )

A következőt szeretném végrehajtatni vele 3-4 óránként:

Az apache kiszolgálón a www könyvtárban van egy srv_info.php fájlom ami kiíratja az összes szerverváltozót ( "<pre><?php print_r($_SERVER) ?></pre>" )

Szeretném, ha a kapott adatokat autómatikusan lementené egy txt fájlba és a kapott txt-t feltöltené egy általam megadott helyre ftp-n keresztül.

- Mielőtt kritizálnátok a szükségességét, a fix ip cím nemigazán megoldható -.

Válaszotokat előre is köszönöm
Mutasd a teljes hozzászólást!
1. Szükséged lesz egy parancssoros FTP-kliensre - ilyen például az ncftp.
2. Kell csinálnod egy szkriptet, ami:
- lefuttatja a az említett PHP-szkriptet, és kimenetét a .txt állományba írja.
- feltölti a .txt állományt

Kb így néz ki:
#!/bin/sh php /srv/www/srv_info.php >/srv/www/qwe.txt ncftpput -u user -p password server.szolgaltato.hu /qwe.txt /srv/www/qwe.txt
3. Mindezt meg kell hívni a /etc/crontab állományban- itt például 4 óránként fut le a szkript a root felhasználó által:
0 */4 * * * root /srv/www/szkript.sh

"- Mielőtt kritizálnátok a szükségességét, a fix ip cím nemigazán megoldható -."
Ennek mi köze a fix IP-címhez?
Mutasd a teljes hozzászólást!

  • Hali!

    A következőkben, ha konkrét problémád van, segíts nekünk - legalább - azzal, hogy A TUDÁSTÁRBAN TESZED fel - KÜLÖN-KÜLÖN - a kérdésed. Előre is köszönjük.

    Mutasd a teljes hozzászólást!
  • Valami ilyesmi kellene a crontabba írni:
    0 */4 * * * a_parancs_amit_futtatni_akarsz

    A futtatandó parancshoz meg csinálni kell egy shell scriptet, amiben futtatod a php fájlodat, majd annak a kimenetét feltöltöd FTP-vel akárhova.
    Mutasd a teljes hozzászólást!
  • 1. Szükséged lesz egy parancssoros FTP-kliensre - ilyen például az ncftp.
    2. Kell csinálnod egy szkriptet, ami:
    - lefuttatja a az említett PHP-szkriptet, és kimenetét a .txt állományba írja.
    - feltölti a .txt állományt

    Kb így néz ki:
    #!/bin/sh php /srv/www/srv_info.php >/srv/www/qwe.txt ncftpput -u user -p password server.szolgaltato.hu /qwe.txt /srv/www/qwe.txt
    3. Mindezt meg kell hívni a /etc/crontab állományban- itt például 4 óránként fut le a szkript a root felhasználó által:
    0 */4 * * * root /srv/www/szkript.sh

    "- Mielőtt kritizálnátok a szükségességét, a fix ip cím nemigazán megoldható -."
    Ennek mi köze a fix IP-címhez?
    Mutasd a teljes hozzászólást!
  • húúú .. hát azért a shellscripteléshez még nem értek...

    Ha van esetleg olyan megoldás vázlat ahol már csak könyvtárat kéne megadnom illetve ftp adatokat, hogy feltöltse azt szívesen fogadnám privibe :)
    Mutasd a teljes hozzászólást!
  • A fix ip cím-et azért írtam mert más helyeken ahol kérdeztem mindenki jött azzal, hogy minek szívni azzal, hogy az ipcímemet állandóan feltöltöm valahova ... oldjak meg inkább egy fix ip címet.

    Ez amit írtál ez egy shell script?

    Az egész egyébként csak azért kell nekem mert néha magától újra indul az otthoni routerem és a noip szolgáltatja a domainünket amit valamiért nem párosít automatikusan az aktuális ip-hez.
    Mutasd a teljes hozzászólást!
  • "Az egész egyébként csak azért kell nekem mert néha magától újra indul az otthoni routerem és a noip szolgáltatja a domainünket amit valamiért nem párosít automatikusan az aktuális ip-hez."
    Ehhez tényleg felesleges feltölteni FTP-tárhelyre a $_SERVER tömb teljes tartalmát.

    Akkor inkább használd ddclient nevű programot (segítség) - ne a router frissítse a ddns-szolgáltatás felé az IP-címedet, hanem a "szerverként" használt gép. A ddclientben megadhatod azt is, hogy milyen időközönként frissítse az IP-címedet (de akár az is megoldható, hogy a router újraindulása esetén frissítsen IP-címet).

    "Ez amit írtál ez egy shell script?"
    Igen egy shell script,ezt hívja meg a Linuxban ütemezett parancsok végrehajtására szolgáló cron (a /etc/crontab ennek a beállítóállománya).
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd