简介
之前写过 如何同步 Debian 服务器的时间,其中介绍了如何同步服务器的时间。
但是有客户反映,这样做以后,服务器时间是同步了。但是服务器重启后时间还是错的。
那么这篇文档将一劳永逸的解决这些问题。
同步时间服务器
首先我们需要确认好时间服务器是可以同步的。
下载需要的 ntpdate 软件:
apt install ntpdate
进行时间同步:
ntpdate ntp.aliyun.com
如上图所示即同步成功。
设置硬件时钟
如果系统是正常关闭的话,系统会将当前时间写入硬件时钟,以便在启动时从硬件时钟中读取系统时间。这是由脚本 /etc/init.d/hwclock.sh 脚本完成的。
我们将硬件时钟设置为同步本地时间:
hwclock --systohc --localtime
同步完后再执行 hwclock
查看硬件时钟是否正确:
开机同步时间
硬件时钟的同步也只是保证系统的正常关机重启,遇到非正常关机,就需要我们在系统启动时同步时间。
在这里我们需要创建启动脚本:
- 创建
/etc/init.d/ntpdate
文件#! /bin/sh
#
# ntpdate Execute the ntpdate command.
PATH=/sbin:/bin:/usr/sbin:/usr/bin
HOST=ntp.aliyun.com
# Set operating system time from other host in LAN.
if [ -x /usr/sbin/rdate ]
then
/usr/sbin/ntpdate $HOST
fi
将上述脚本中的 HOST 改成时间同步服务器即可。 - 修改文件执行权限
chmod a+rx /etc/init.d/ntpdate
- 在
/etc/rc2.d
创建映射文件cd /etc/rc2.d
ln -s ../init.d/ntpdate S19ntpdate - 重启后,系统时间将会同步过来。
那么本次的文档到这里也就结束了,如果想了解更多关于 Debian 时间服务器的问题,请查阅 官方文档。