步骤一:安装时钟同步软件
这个软件包含两个命令集: chronyc 客户端 和 chronyd 守护进程. 安装chrony方法:
sudo apt install chrony
验证 chrony是否安装成功,并查看有多少个服务端及结点已连接:
chronyc activity
$ chronyc activity
200 OK
8 sources online
0 sources offline
0 sources doing burst (return to online)
0 sources doing burst (return to offline)
0 sources with unknown address
步骤二:配置 /etc/chrony/chrony.conf
参考 https://chrony.tuxfamily.org/doc/3.5/chrony.conf.html
Server端
配置: vim /etc/chrony/chrony.conf
#注释掉配置中自带的外部时间服务器,再做如下配置
#server 0.centos.pool.ntp.org iburst
#server 1.centos.pool.ntp.org iburst
#server 2.centos.pool.ntp.org iburst
#server 3.centos.pool.ntp.org iburst
server 127.0.0.1 iburst #本地作为时钟源
server 202.112.10.60 iburst #北京邮电大学
server ntp.ntsc.ac.cn iburst #国家授时中心
server ntp1.aliyun.com iburst #阿里云公网NTP
local stratum 10 #允许本地同步
allow #允许所有连接
#允许这些网段的设备同步时间,将allow 0.0.0.0/0代表允许所以任意设备
#Allow NTP client access from local network
allow 192.168.0.0/16
常用命令:tracking
检查 Chrony 是否实际同步
chronyc tracking
$ chronyc tracking
Reference ID : AB42617E (srcf-ntp.stanford.edu)
Stratum : 2 Ref time (UTC) : Thu Apr 05 18:27:33 2018
System time : 0.000669840 seconds slow of NTP time
Last offset : -0.000506939 seconds
RMS offset : 0.001261410 seconds
Frequency : 28.552 ppm slow
Residual freq : -0.000 ppm
Skew : 88.846 ppm
Root delay : 0.031207338 seconds
Root dispersion : 0.001206590 seconds
Update interval : 65.2 seconds
Leap status : Normal
sources
这里主要关注 Update interval 这个参数, 说明最后两次更新的时间间隔是 64.1s。以上结果中的其它参数的含义分别是:
● 引用 ID - 计算机当前同步的引用 ID 和名称。
● Stratum - 连接参考时钟的计算机的跳数。
● 参考时间 - 这是参考源的最后一次测量的 UTC 时间。
● 系统时间 - 来自同步服务器的系统时钟延迟。
● 最后一次偏移 - 上次时钟更新的估计偏移量。
● RMS 偏移 - 偏移值的长期平均值。
● 频率 - 如果 chronyd 没有纠正它,那么系统的时钟错误的速率。它以 ppm (百万分率)提供。
● 残余频率 - 残余频率表示参考源的测量值与当前使用的频率之间的差异。
● 偏斜 - 估计频率的误差界限。
● 根延迟 - 网络路径延迟到计算机正在同步的层计算机的总和。
● 跳跃状态 - 这是跳跃状态,可以具有以下值之一:正常、插入秒、删除秒或不同步。
常用命令
显示所有 NTP 源服务器的信息
chronyc sources -v
查看 NTP 服务器的在线和离线状态
chronyc activity
查看 Chrony 服务的日志
journalctl -u chronyd
检查 NTP 访问是否对特定主机可用
chronyc accheck
该命令会显示有多少 NTP 源在线/离线
chronyc activity
手动添加一台新的 NTP 服务器
chronyc add server
在客户端报告已访问到服务器
chronyc clients
手动移除 NTP 服务器或对等服务器
chronyc delete
手动设置守护进程时间
chronyc settime
校准时间服务器,显示系统时间信息
chronyc tracking
检查 NTP 访问是否对特定主机可用
chronyc accheck
查看时间同步源
chronyc sources -v
查看时间同步源状态
chronyc sourcestats -v