Warum läuft cron.weekly nicht?


8

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.dailyscheint zu funktionieren, da logrotate funktioniert. cron.hourlyenthält keine Skripte.

Irgendwelche Ideen, was möglicherweise schief gehen könnte?


Überprüfen Sie die E-Mails von root auf Ausgabe und mögliche Fehlermeldungen. Kann in gefunden werden, /var/spool/mail/rootwenn Sie noch nicht /etc/aliaseseingerichtet sind, um die Mail von root an eine Stelle weiterzuleiten, an der sie gelesen werden kann.
Ladadadada

@Ladadadada gute Idee! Leider ist da absolut nichts los cron.weekly.
Cobra_Fast

Antworten:


18

Die cron.weeklySkripte werden gestartet, run-partswodurch alle Dateien mit der Erweiterung übersprungen werden. Umbenennen runcheck.shin runcheckund es sollte reichen


4
So etwas wird man erst erwischen, wenn ich wette.
user9517

1

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/anacronals Retval Null zurückgegeben wird, werden keine anderen Befehle ausgeführt.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.