Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Linux Forum Linux-Web.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

07.03.2006, 20:39

Cronjob und IRC

Hallo zusammen,

ich hab ein kleines Problem. Ich habe einen Unreal IRC server, und muss per cronjob überprüfen, ob der noch läuft, und wenn nicht, muss der neu gestartet werden.

Nur hab ich keinen Plan, wie mein cronjob.php aussehen muss.

Unreal erzeugt einen Prozess mit namen IRCD

den kann ich per ps -A | grep ircd auch abfragen, weiss aber nicht, wie ich das auswerten kann.

kann mir da einer helfen bitte?

daemon079

Anfänger

  • »daemon079« ist männlich

Beiträge: 3

Wohnort: Itzehoe

Beruf: Fachinformatiker Systemintegration

  • Nachricht senden

2

08.03.2006, 12:28

RE: Cronjob und IRC

du kannst nach dem Prozess suchen

Quellcode

1
2
3
4
5
6
7
#!/bin/sh
$SERVER=`ps ax | grep ircd | wc -l `
if [ $server -eq 0 ];
then
/etc/init.d/ircd start
done
fi


So sollte es gehn, oder zumindest so ähnlich

Gruss Marc
There are only 10 types of people in the world:
Those who understand binary, and those who don't

3

08.03.2006, 14:55

eher so aehnlich ... in den grep sollte noch ein 'grep -v grep' , sonst findet er sich selbst

Beispiel:
... so waere das ergebnis zufaellig ok:
:~# ps ax | grep presenter
5562 ? RN 0:00 /usr/local/bin/php bin/presenter.php

... der kann aber auch sich selbst finden:
:~# ps ax | grep presenter
5552 pts/0 S+ 0:00 grep presenter

... und den restlichen code korrigieren:

- variablenzuweisung ohne $
- variablenbezeichnung gleich [entweder 'SERVER' oder 'server']
- das 'done' weglassen

das ganze wuerde dann so aussehen:

Quellcode

1
2
3
4
5
6
7
8
#!/bin/sh

SERVER=$(ps ax | grep ircd | grep -v grep | wc -l)

if [ $SERVER -eq 0 ]
then
  /etc/init.d/ircd start
fi


.. ich wuerde den string fuer den grep noch konkreter angeben [z.B.: "/usr/sbin/ircd"]

gruß epikur
wie soll ich wissen, was ich denke?
... bevor ich hoere, was ich sage
... bevor ich lese, was ich schreibe

4

08.03.2006, 19:20

Danke für die Hilfe....hab nur leider vergessen zu sagen, dass die cronjobs bei mir in php sind....hat da jemand ne idee??

Greez

Dipswitch

5

08.03.2006, 19:51

hi Dipswitch,

den job startest du doch ueber die crontab ... egal ob php oder shell ...

Quellcode

1
10 * * * * /usr/sbin/MeinWatchScript.sh

oder [als php-script]

Quellcode

1
10 * * * * /usr/sbin/MeinWatchScript.php

oder [wenn es uebers web sein soll (?!) muesste das so gehen] ... hab ich aber nicht getestet =D

Quellcode

1
10 * * * *  /usr/bin/lynx --dump http://www.meinedomain.de/MeinWatchScript.php


... oder wolltest du wissen wie man das shell-script in php schreibt?

gruß epikur
wie soll ich wissen, was ich denke?
... bevor ich hoere, was ich sage
... bevor ich lese, was ich schreibe

6

08.03.2006, 19:56

danke hat sich erledigt...habe anstelle von != 0 =! 0 eingegeben gehabt :-)

Thema bewerten