1. 服务端配置
- 关闭防火墙,确保服务端与客户端连通性
- 安装 服务
yum -y install chrony.x86_64
- 修改/etc/配置文件
修改第22行,Allow NTP client access from local network,配置允许访问的客户端列表,支持CIDR。
修改第26行设置同步,Serve time even if not synchronized to any NTP server.,即使没有与任何 NTP 服务器同步,也要服务时间。打开注释即可,即:
cat /etc/
# Use public servers from the project.
# Please consider joining the pool (/).
pool 2. iburst
# Record the rate at which the system clock gains/losses time.
driftfile /var/lib/chrony/drift
# Allow the system clock to be stepped in the first three updates
# if its offset is larger than 1 second.
makestep 1.0 3
# Enable kernel synchronization of the real-time clock (RTC).
rtcsync
# Enable hardware timestamping on all interfaces that support it.
#hwtimestamp *
# Increase the minimum number of selectable sources required to adjust
# the system clock.
#minsources 2
# Allow NTP client access from local network.
allow 192.168.0.0/16
# Serve time even if not synchronized to a time source.
local stratum 10
# Specify file containing keys for NTP authentication.
keyfile /etc/
# Get TAI-UTC offset and leap seconds from the system tz database.
leapsectz right/UTC
# Specify directory for log files.
logdir /var/log/chrony
# Select which information is logged.
#log measurements statistics tracking
- 重启下服务端chrony服务,使用systemctl restart 重启即可。
2. 客户端配置
- 关闭防火墙,确保服务端与客户端连通性
- 安装 服务
yum -y install chrony.x86_64
- 修改/etc/配置文件
指定时间同步源服务器IP,格式如下:
vim /etc/
#prefer是将此服务器标记为首选服务器,如果有多台server可以指定首选服务器,当系统启动时,Chrony会首先尝试与该服务器进行时间同步。
server prefer iburst
server iburst
#"iburst"选项表示在初始化时以快速速率向服务器发起时间查询,以快速同步时间。
- 重启下chrony服务
3. 查看同步状态
chronyc sources -v 查看时间同步源信息
[root@localhost ~]# chronyc sources -v
.-- Source mode '^' = server, '=' = peer, '#' = local clock.
/ .- Source state '*' = current best, '+' = combined, '-' = not combined,
| / 'x' = may be in error, '~' = too variable, '?' = unusable.
|| .- xxxx [ yyyy ] +/- zzzz
|| Reachability register (octal) -. | xxxx = adjusted offset,
|| Log2(Polling interval) --. | | yyyy = measured offset,
|| \ | | zzzz = estimated error.
|| | | \
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^- 181-.as486> 2 9 377 87 -4408us[-3918us] +/- 245ms
^* 60.12.124.12 2 9 377 87 +8197us[+8688us] +/- 50ms
^- 119.28.183.184 2 9 377 413 -18ms[ -18ms] +/- 91ms
^+ 1 8 377 291 +5013us[+5028us] +/- 34ms
^? 192.168.174.1 0 9 0 - +0ns[ +0ns] +/- 0ns
^- 192.168.159.129 3 6 377 43 -19ms[ -19ms] +/- 93ms
在使用"chronyc sources -v"命令时,MS状态的符号含义如下:
"^?"表示该源的状态未知,chronyd尚未与该源进行同步。这意味着chronyd尚未与该源建立连接,无法确定该源的时间准确性或可靠性。
“^-“表示该源当前处于可用状态,但chronyd尚未选择该源作为参考源进行同步。chronyd会尝试与多个可用源进行通信,并评估它们的时间准确性和可靠性。当chronyd确定某个源具备较好的时间准确性和可靠性时,它会将该源标记为”^*”。
"^*"表示该源是当前活跃的参考源,chronyd正在使用该源进行时钟同步。这意味着chronyd已与该源建立连接,并使用该源的时间信息来调整系统时钟,以保持时间的准确性。
当状态中出现"^“表示时间同步正常,chronyd正在使用该源进行时钟同步。对于正常运行的chronyd,应该至少有一个源被标记为”^“。如果没有源被标记为”^*",则表示chronyd无法与任何可用源进行同步,时间同步可能存在问题。
上面"chronyc sources -v"命令每一列的含义如下:
- MS:时间源的标识符;
- Name/IP address:时间源的名称或IP地址;
- Stratum:时间源的层级;
- Poll:轮询间隔的对数(以2为底);
- Reach:到达性寄存器的八进制值,表示与时间源的连接状态;
- LastRx:最后一次接收到时间源的时间戳;
- Last sample:最后一次测量的时间偏移量;
- Adjusted offset :调整后的时间偏移量;
- Measured offset:测量的时间偏移量;
- Estimated error:估计的时间误差。
源模式(Source mode)和源状态(Source state)在图形化显示时使用,用来表示时间源的类型和状态。