Übersicht
Stichwortsuche
History
Versionen
Kategorien
Alle Artikel
SuSE Linux: Version 6.0
/etc/cron.hourly
/etc/cron.daily
etc. liegenden Skripten werden von Cron nicht
ausgeführt.
/usr/lib/cron/run-crons
, das Cron alle 15
Min. startet und das wiederum die System-Cronjobs aufruft, wird die
Differenz zwischen der aktuellen Zeit zum Zeitpunkt der Ausführung und
der Zeitmarken der Dateien in /var/cron/lastrun
mit Hilfe von find abgefragt. Find hat aber leider einen
kleinen Bug in ctime.
/etc/crontab
durch folgende ersetzen:
SHELL=/bin/sh PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin MAILTO=root #-* * * * * root test -x /usr/sbin/atrun && /usr/sbin/atrun 0 * * * * root test -x /usr/sbin/faxqclean && /usr/sbin/faxqclean 5 22 * * * root test -x /usr/sbin/texpire && /usr/sbin/texpire 25 23 * * * root test -e /usr/sbin/faxcron && sh /usr/sbin/faxcron | mail FaxMaster 45 6 * * * root test -x /etc/cron.daily/aaa_base && /etc/cron.daily/aaa_base 50 6 * * * root test -x /etc/cron.daily/tetex.cron && /etc/cron.daily/tetex.cronAchten Sie bitte darauf, daß nur root Schreib- und Leseberechtigung für die Datei /etc/crontab haben sollte. Ändern Sie dies ggf. durch die Eingabe von
chown root.root /etc/crontab chmod 600 /etc/crontab
/usr/lib/cron/run-crons
durch folgendes
Script ersetzen:
#!/bin/bash # # /usr/lib/cron/run-crons # # # Copyright (c) 1998 SuSE GmbH Nuernberg, Germany. All rights reserved. # # Author: Burchard Steinbild, 1998 # # this script looks into /etc/cron.{hourly,daily,weekly,monthly} for # scripts to be executed. The info about last run is stored in # /var/cron/lastrun # # concept similar to debian and redhat # mkdir -p /var/cron/lastrun for CRONDIR in /etc/cron.{hourly,daily,weekly,monthly} ; do test -d $CRONDIR || continue BASE=${CRONDIR##*/} test -e /var/cron/lastrun/$BASE && { case $BASE in cron.hourly) TIME="-cmin +60 -or -cmin 60" ;; cron.daily) TIME="-ctime +1 -or -ctime 1" ;; cron.weekly) TIME="-ctime +7 -or -ctime 7" ;; cron.monthly) TIME="-ctime +30 -or -ctime 30" ;; esac eval find /var/cron/lastrun/$BASE $TIME | \ xargs --no-run-if-empty rm } if test ! -e /var/cron/lastrun/$BASE ; then touch /var/cron/lastrun/$BASE # keep going when something fails set +e for SCRIPT in $CRONDIR/* ; do test -d $SCRIPT && continue if test -x $SCRIPT ; then $SCRIPT fi done fi done # # now make sure, we have no lastrun files dated to future # touch /var/cron/lastrun find /var/cron/lastrun -newer /var/cron/lastrun | \ xargs --no-run-if-empty rm
Siehe auch:
Stichwörter: CRON, CRONTAB, AAA_BASE, TETEX.CRON, CRON.DAILY, UPDATE, LOCATE, 6.0
Kategorien:
Administration
Übersicht
Stichwortsuche
History
Versionen
Kategorien
Alle Artikel