大多linux系统都会ntpdate小工具,可用来同步系统时间,但是要注意ntpdate是越变式修改时间的,如果时差过大,会造成有些程序混乱;如果对某些有影响,请采用ntpd,它是逐步校准的。另外ntpdate在同步时间时,只对相差不到24小时的时间生效,所以系统时间和硬件时间超出24小时需先手工修改:
修改硬件时间示例:
设置时间:
date -s 03/18/16 #2016年03月18日
date -s 14:24:00 #14时24分00秒
/sbin/hwclock #查看硬件时间
/sbin/hwclock --systohc #将当前系统时间写到硬件,通过先设置系统时间,在写入硬件可修改硬件时间
一般ntpdate工具位置
/lib/libcap.so.1
/usr/sbin/ntpdate
我们可以配置一个脚本ntp.sh,并将该文件追加在/etc/rc.local文件后面设置youdir/ntp.sh&开机启动
ntp.sh示例:
#/bin/bash
NTPSERVER=216.229.0.179
NTPPERIOD=600s
while true
do
/usr/sbin/ntpdate $NTPSERVER > /dev/null 2>&1
/sbin/hwclock -w
/bin/sleep $NTPPERIOD
done
注:
NTPSERVER=ntp服务器地址
NTPPERIOD=轮询间隔
可以先自行测试时间服务器:
运行命令:ping “ntp服务器地址”
运行命令:/usr/sbin/ntpdate “ntp服务器地址”
成功返回样例:
(18 Mar 17:05:48 ntpdate[2779]: adjust time server 216.229.0.179 offset 0.056640 sec)
就表明可以同步时间
当然你也可以将你做好的配置打包备用
tar -czvPf you_out_dir/ntf.tar.gz /lib/libcap.so.1 /usr/sbin/ntpdate youdir/exx/ntp.sh