cron时钟问题

我注意到在我的RHEL 5.5上,cron每天都会启动一个小时(凌晨1点,而不是午夜)。 系统和硬件时钟是一样的。 我怎样才能设置它,所以它会在午夜开始?

date

[root@a ~]# date Wed Mar 9 12:44:35 EST 2011 

hwclock的

 [root@a ~]# /sbin/hwclock -r Wed 09 Mar 2011 12:44:42 PM EST -0.000484 seconds 

crontab中

 0 0 * * * /usr/sbin/ntpdate pool.ntp.org >/dev/null 2>&1 

cron日志

 Mar 7 01:00:01 host crond[30420]: (root) CMD (/usr/sbin/ntpdate pool.ntp.org >/dev/null 2>&1) 

时钟

 [root@a ~]# cat /etc/sysconfig/clock ZONE="America/New York" UTC=true ARC=false 

你有没有改变系统时区设置? 如果是的话,你之后重新启动了crond服务吗?

无论如何,我会重新启动cron deamon,以确保它使用正确的时区。

 # /sbin/service crond restart 

重启crond并不总是“足够”的。

  1. 设置/etc/localtime作为符号链接与/usr/share/zoneinfo/...时区文件之一链接
  2. /etc/sysconfig/clockZONE="CONTINENT/TOWN" (+ UTC = true,ARC = false)
  3. 重新启动整个机器

IHMO,只要每天运行,每天早上1点的日常工作就没有问题。

检查你的/etc/crontab文件,我的(RHEL 5.4)默认运行在凌晨2:00:

 # 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 

寻找你的cron.daily行。 编辑适合,例如:

 01 0 * * * root run-parts /etc/cron.daily 

如果你正在谈论/etc/cron.daily的事情,那么在/ etc / crontab中定义。 确保/etc/cron.daily的条目设置为在午夜运行,默认情况下它在04:02运行。