Als ich bemerkte, dass das Backupscript, das ich in /etc/cron.weekly auf meinem Debian6-Server abgelegt habe, nicht ausgeführt wird, habe ich dieses kleine Skript darin abgelegt, um zu sehen, ob der wöchentliche Cronjob überhaupt ausgeführt wird:
#!/bin/bash
echo 'CRON RAN' > /var/log/cron-weekly-runcheck.log
speicherte es als
-rwxr-xr-x 1 root root 64 Jul 15 02:14 /etc/cron.weekly/runcheck.sh
Als ich heute nachgesehen habe, war die Protokolldatei, die erstellt werden sollte, nicht vorhanden.
Die Crontab sieht wie folgt aus (was meines Wissens die Standard-Debian6-Crontab sein sollte):
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6 * * 1 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
Alles, was vom wöchentlichen Cronjob in einer Protokolldatei angezeigt wird, ist diese Zeile:
Jul 16 06:47:01 wtwrp /USR/SBIN/CRON[29272]: (root) CMD (test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly ))
Randnotiz: cron.daily
scheint zu funktionieren, da logrotate funktioniert. cron.hourly
enthält keine Skripte.
Irgendwelche Ideen, was möglicherweise schief gehen könnte?
bash
cron
debian-squeeze
Cobra_Fast
quelle
quelle
/var/spool/mail/root
wenn Sie noch nicht/etc/aliases
eingerichtet sind, um die Mail von root an eine Stelle weiterzuleiten, an der sie gelesen werden kann.cron.weekly
.Antworten:
Die
cron.weekly
Skripte werden gestartet,run-parts
wodurch alle Dateien mit der Erweiterung übersprungen werden. Umbenennenruncheck.sh
inruncheck
und es sollte reichenquelle
comm1 || comm2 || comm3 || comm4
wird ausgeführt, bis das erste Retval = 0 zurückgegeben wird (von links nach rechts). Der Rest der verketteten Befehle wird vom Interpreter optimiert und überhaupt NICHT ausgeführt
Wenn
test -x /usr/sbin/anacron
als Retval Null zurückgegeben wird, werden keine anderen Befehle ausgeführt.quelle