[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: einzelner Befehl innerhalb eines Script wird nicht ausgeführt, wenn es per cron gestartet wird - in einer bash funktioniert es aber



Heiko Weiß schrieb am 29. Oct um 16:57 Uhr:

>   service prosody start 2>&1 | tee /var/tmp/meinlog

> /usr/local/sbin/dienstueberwachung_lua_5_1_chat: 17:
> /usr/local/sbin/dienstueberwachung_lua_5_1_chat: service: not found


> /etc/init.d/prosody start 2>&1 | tee /var/tmp/meinlog
> 
> Starting Prosody XMPP Server: prosody/etc/init.d/prosody: 59:
> /etc/init.d/prosody: start-stop-daemon: not found
>  failed!

> scheinbar hängt es ja doch mit dem unbekannten Pfad zu service zusammmen?!

nicht direkt, denn


>   /usr/sbin/service prosody start 2>&1 | tee /var/tmp/meinlog

> Starting Prosody XMPP Server: prosody/etc/init.d/prosody: 59:
> /etc/init.d/prosody: start-stop-daemon: not found
>  failed!

die Fehlermeldung bleibt ja gleich

> hinzuzufügen? Oder welches Herangehen bringt mich zur Fehlerfindung weiter

also, ich würde vermuten

a) es liegt an der Umgebung, wie Matthias schon schrieb. Vergleiche mal die
Ausgabe von env mit folgendem crontab Eintrag:

* * * * * env >> /root/env

Oder aber du schaust mal in das Script /etc/init.d/prosody, in Zeile 59.

Ein einfacher MTA, der nur lokal zustellt, würde bei der Fehlersuche auch
helfen.

Auch ist cron nicht unbedingt dafür gedacht, als watchdog zu fungieren. 
Dafür gibts was anderes, früher gab es mal /etc/inittab, da reichte es, ein
Zeile einzutragen.

Gruß
Christian



> Am 28.10.2016 um 17:23 schrieb Matthias Böttcher:
> > Hallo Heiko,
> > 
> > lass dir mal $PATH in deinem Script ausgeben, wenn es mit cron gestartet wird.
> > 
> > Gruß
> > Matthias

-- 
Christian Knoke            * * *            http://cknoke.de
* * * * * * * * *  Ceterum censeo Microsoft esse dividendum.


Reply to: