我这里有台服务器需要定期进行时间同步,在crontab中加了时间同步脚本

*/30 * * * * /root/ntpdate.sh

 

/root/ntpdate.sh脚本内容

service ntpd stop
ntpdate -b 192.168.1.1
service ntpd start

 

但是发现该任务计划并没有被执行,查找原因

#mail

会看到

U353 root@test  Thu Feb 23 14:00  24/1001  "Cron <root@test> /root/ntpdate.sh"

 

查看mail内容:

Message 353:
From root@test  Thu Feb 23 14:00:04 2012
Date: Thu, 23 Feb 2012 14:00:03 +0800
From: root@test (Cron Daemon)
To: root@test
Subject: Cron <root@test> /root/ntpdate.sh
X-Cron-Env: <SHELL=/bin/sh>
X-Cron-Env: <HOME=/root>
X-Cron-Env: <PATH=/usr/bin:/bin>
X-Cron-Env: <LOGNAME=root>
X-Cron-Env: <USER=root>

/root/ntpdate.sh: line 1: service: command not found
/root/ntpdate.sh: line 2: ntpdate: command not found
/root/ntpdate.sh: line 3: service: command not found

 

解决方法:

crontab -e

加入以下内容

SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin