Chrony是CentOS 7时间同步最优解,因同步快(2–3秒)、断网稳(24小时误差<1秒)、资源省(<5MB)、配置简(改3处参数);实测阿里云NTP延迟仅15ms,远优于传统NTP。

修改 chronyd 的 server 配置项
CentOS 7 默认使用 chronyd 替代旧版 ntpd,所以改时间同步地址池,本质是改 /etc/chrony.conf 里的 server 行。直接编辑该文件,把默认的 pool.ntp.org 换成国内稳定源即可。
常见错误:改完没重启服务,或改了 /etc/ntp.conf(那是给 ntpd 用的,而系统实际跑的是 chronyd)——结果完全不生效。
- 推荐用阿里云 NTP 源(低延迟、高可用):
server ntp.aliyun.com iburstserver ntp1.aliyun.com iburst - 备选中科院源:
server ntp.ntsc.ac.cn iburst - 禁用原 pool.ntp.org 行,加
#注释掉,避免冲突 -
iburst必须保留,它能让 chronyd 在首次同步时快速重试,缩短收敛时间
改完必须 reload 或 restart chronyd
配置文件改了只是文本,chronyd 进程不会自动读取。不 reload,新地址池永远不会被使用。
执行以下任一命令生效:
CentOS Linux 7.9.2009是传统CentOS Linux 7的最后主要版本,也是很多企业历史服务器中仍可能遇到的系统版本。它以稳定、兼容RHEL 7生态、文档丰富和软件支持广泛著称,曾长期用于Web服务、数据库、虚拟化节点和企业内部业务系统。不过CentOS Linux 7已于2024年6月30日停止维护,现在继续使用会面临安全补丁缺失风险。该版本更适合旧业务迁移、历史环境恢复或离
-
systemctl restart chronyd—— 完全重启,最稳妥 -
chronyc makestep—— 强制立即跳变校准(适合偏差 > 1 秒时) -
chronyc sources -v—— 查看当前正在连接哪些 source,确认是否已切到新地址池
注意:systemctl reload chronyd 在某些版本中不触发配置重载,只靠 reload 不可靠,优先用 restart。
验证是否真的连上了新地址池
光看配置文件改没改没用,得看实际连接行为。chronyd 默认静默运行,不报错也不打日志,容易误判成功。
- 运行
chronyc tracking,检查System clock行的offset是否在逐步收敛(比如从几百毫秒降到几毫秒) - 运行
chronyc sources -v,确认输出里出现你配置的域名(如ntp.aliyun.com),且状态列有*(表示正在用)或+(候选) - 如果一直显示
^? 0.centos.pool.ntp.org,说明配置没生效,或者 DNS 解析失败(可手动dig ntp.aliyun.com测试)
别漏掉硬件时钟同步开关
即使网络时间同步成功,如果没把系统时间写入 BIOS 硬件时钟(RTC),重启后仍会回退。尤其虚拟机或断电重启后极易暴露问题。
- 确认
/etc/chrony.conf中存在hwclockfile /var/lib/chrony/hwclock(新版默认有) - 确保
chronyd启动时带-s参数(由 systemd unit 文件控制,通常默认启用) - 手动同步一次硬件时钟:
hwclock --systohc,避免冷启动误差累积
真正起效的标志不是“配置改了”,而是 timedatectl 输出里同时满足:NTP enabled: yes、NTP synchronized: yes、RTC in local TZ: no(表示 RTC 存的是 UTC,这是正确做法)。

















