SirAbdul
10.11.04, 16:36
Hallo zusammen.
ich habe heute ein shell script geschrieben, welches anhand einer pid file ermittelt ob ein prozess noch läuft oder nicht. wenn er nicht merh läuft soll dieser neu gestartet werden.
Beispiel:
Dienst smpppd hat die PID 4711
Wenn die PID 4711 nicht mehr vorhanden ist in ps -A dann soll
/etc/init.d/smpppd start
ausgeführt werden.
Soweit so gut. Wenn ich das script "von hand" ausführe funktioniert es ohne probleme.
Allerdings macht ein solches Script auch nur Sinn, wenn es in einem CronJob läuft.
Wenn ich allerdings im crontab (mit crontab -e geöffnet) z.B. die Zeile
0,15,30,45 * * * * /path/to/script/pidtest.sh
eintrage, dann wird das script auch aus geführt (Ich generiere Logfiles mit Datum + Zeit angaben) nur der daemon wird nicht gestartet.
Stattdessen bekomm ich nur eine Mail vom Cron Daemon mit der Meldung:
Starting SMPPPD/etc/init.d/smpppd: startproc: command not found
..failed
So und das wars.
Kann es evtl. sein, das ein Cronjob keinen Daemon ausführen kann ?
Hier noch die Stelle, an welcher der Daemon gestartet werden soll:
#If the daemon is not running, start it.
if [ $LINES = 0 ]; then
echo "(Log)Starting the daemon" >> $LOG_FILE
OLDDIR=$PWD
cd /etc/init.d/
./smpppd start
else
echo "(Log)Daemon is up." >> $LOG_FILE
fi
Ich habe auch schon versucht den Start-Befehl direkt in den crontab zu schreiben. Also
23 * * * * /etc/init.d/smpppd start
Das funktioniert auch nicht und führt zur gleichen Fehlermeldung.
Danke schonmal für eure Zeit :)
Gruß,
SirAbdul
ich habe heute ein shell script geschrieben, welches anhand einer pid file ermittelt ob ein prozess noch läuft oder nicht. wenn er nicht merh läuft soll dieser neu gestartet werden.
Beispiel:
Dienst smpppd hat die PID 4711
Wenn die PID 4711 nicht mehr vorhanden ist in ps -A dann soll
/etc/init.d/smpppd start
ausgeführt werden.
Soweit so gut. Wenn ich das script "von hand" ausführe funktioniert es ohne probleme.
Allerdings macht ein solches Script auch nur Sinn, wenn es in einem CronJob läuft.
Wenn ich allerdings im crontab (mit crontab -e geöffnet) z.B. die Zeile
0,15,30,45 * * * * /path/to/script/pidtest.sh
eintrage, dann wird das script auch aus geführt (Ich generiere Logfiles mit Datum + Zeit angaben) nur der daemon wird nicht gestartet.
Stattdessen bekomm ich nur eine Mail vom Cron Daemon mit der Meldung:
Starting SMPPPD/etc/init.d/smpppd: startproc: command not found
..failed
So und das wars.
Kann es evtl. sein, das ein Cronjob keinen Daemon ausführen kann ?
Hier noch die Stelle, an welcher der Daemon gestartet werden soll:
#If the daemon is not running, start it.
if [ $LINES = 0 ]; then
echo "(Log)Starting the daemon" >> $LOG_FILE
OLDDIR=$PWD
cd /etc/init.d/
./smpppd start
else
echo "(Log)Daemon is up." >> $LOG_FILE
fi
Ich habe auch schon versucht den Start-Befehl direkt in den crontab zu schreiben. Also
23 * * * * /etc/init.d/smpppd start
Das funktioniert auch nicht und führt zur gleichen Fehlermeldung.
Danke schonmal für eure Zeit :)
Gruß,
SirAbdul