Hallo miteinander,
ich habe ein Problem mit Cron ein sh-Script zu starten.
Wenn ich das Script im Terminal starte funktionierts.
Wenn ich den Befehl im Cron direkt starte funktionierts auch.
Aber wenn ich den Befehl als sh starte startet lt Cron-Log das Script aber es funktioniert nicht.
Wenn ich das Script in Cron.hourly stecke wird diese auch nicht ausgeführt.
Das OS CentOS 5.4. -> selbiges ClearOS 5.1.
Meine Crontab:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
01 * * * * root run-parts /etc/cron.hourly
02 4 * * * root run-parts /etc/cron.daily
22 4 * * 0 root run-parts /etc/cron.weekly
42 4 1 * * root run-parts /etc/cron.monthly
#Mein Script
* * * * * root /root/test.sh
Das Script:
#!/bin/bash
ls > test.txt
Auszug Cron Log:
Mar 24 08:27:01 testclear1 crond[21965]: (root) CMD (/root/test.sh)
Mar 24 08:28:01 testclear1 crond[22016]: (root) CMD (/root/test.sh)
Mar 24 08:29:01 testclear1 crond[22063]: (root) CMD (/root/test.sh)
Habt ihr einen Ansatz wo ich den Fehler suchen kann?
Ich probiere schon diverses komme aber auf keinen Nenner.
Linux 15.070 Themen, 107.539 Beiträge
Wie lauten den die Berechtigungen, die das Skript /root/test.sh hat?
wow, schnelle Rückmeldung.
Ich habe die Berechtigung auf 0755, habe es aber schon mit 0777 probiert.
Wenn ich das Script im Terminal ausführe funktioniert es ja.
Könnte es sein, das die Variable Path schuld ist?
Komischerweise funktioniert das Script auch in cron.hourly nicht.
Funktioniert bei mir (extra mit Centos 5.4 getestet), abgesehen davon, dass er zwar als pwd /root ausgibt, die test.txt aber in / ablegt.
mmm...Ich habe jetzt das Script ohne Endung in cron.hourly ausgeführt.
Da funktionierts.
Wenn ich das Script in der Crontab ohne Endung ausführe funktionierts nicht,
selbiges wenn ich den Task in einer neuen Datei in der cron.d ausführe.
Vorest mal mit ClearOS getestet.
Gibt es irgentwelche Rechte zum einstellen um Scripts in Crontab oder cron.d auszuführen?
Sehr rätselhaft???
