安装chrony服务:使用包管理器如yum/dnf或apt安装chrony;2. 配置/etc/chrony.conf:设置server指定可靠ntp服务器(如ntp.aliyun.com)、可选配置allow网段允许局域网同步、必要时启用local stratum作为备用时钟,并配置driftfile、logdir等参数;3. 启动并启用chronyd服务:执行systemctl start chronyd和systemctl enable chronyd;4. 验证同步状态:使用chronyc tracking查看时间偏差和层级,chronyc sources -v检查服务器状态,必要时执行chronyc makestep强制同步;5. 防火墙配置:若作服务端需放行udp 123端口,使用firewall-cmd添加ntp服务;6. 排查常见问题:通过添加makestep指令解决大偏差无法同步问题,检查ntpd或systemd-timesyncd冲突避免端口占用,解决chronyc权限错误需检查cmdallow配置或使用root权限操作,配置完成后系统将自动保持精准时间同步,建议定期监控时间偏移以确保服务稳定运行。

在 Linux 系统中,
chrony是一个用于同步系统时间的 NTP(网络时间协议)客户端和服务,相比传统的
ntpd,它更轻量、响应更快,尤其适合虚拟机和不稳定的网络环境。正确配置
chrony可以确保服务器时间精准,避免因时间偏差导致的问题(如证书验证失败、日志混乱等)。
以下是配置
chrony实现网络时间同步的完整步骤:
一、安装 chrony 服务
大多数现代 Linux 发行版默认已安装
chrony,如果没有,可以通过包管理器安装。
CentOS / RHEL / Rocky Linux / AlmaLinux:
sudo yum install chrony -y # 或者使用 dnf(较新版本) sudo dnf install chrony -y
Ubuntu / Debian:
sudo apt update sudo apt install chrony -y
安装完成后,服务通常会自动启动。
二、配置 chrony 主配置文件
主配置文件位于
/etc/chrony.conf,编辑它进行基本设置:
sudo vim /etc/chrony.conf
常用配置项说明:
-
指定时间服务器(NTP 服务器)
找到
server
开头的行,可以添加或修改为可靠的公共 NTP 服务器,例如:server ntp.aliyun.com iburst server time1.cloud.tencent.com iburst server ntp.ubuntu.com iburst server pool.ntp.org iburst
iburst
:表示在初始同步时快速发送多个请求,加快同步速度。- 推荐使用国内服务器以降低延迟,如阿里云、腾讯云等。
-
允许本地网络中的客户端同步(可选,用于搭建局域网时间服务器)
如果你希望这台服务器作为局域网内其他设备的时间源,可以取消注释并修改
allow
指令:allow 192.168.1.0/24
表示允许来自
192.168.1.x
网段的设备同步时间。
启科PHP淘宝客系统下载1、请上传下载到的淘宝客系统安装包并上传到空间根目录中进行解压,解压后将网站文件移动到根目录的位置,然后访问 /install 进行安装。您也可以在本地解压,并以二进制方式将程序上传至您的网站空间。 2、同意启科网络电子商务系统安装协议进入下一步。 3、如果系统检测环境通过,则会提示输入您的数据库服务器地址(一般为本机,即127.0.0.1或者localhost)、数据库账号、数据库密码、数据库名
-
设置本地时间层级(stratum),当无法连接外部服务器时使用本地时钟(可选)
如果服务器无法访问外部 NTP 服务器,可启用本地时钟作为备用:
# 启用本地时钟(层级设为 10,表示不可靠) local stratum 10
-
其他建议配置项
# 记录测量值、统计信息等 driftfile /var/lib/chrony/drift # 日志文件 logdir /var/log/chrony # 最大允许时间跳变(单位秒),超过则逐步调整 maxdistance 16.0 # 快速初始同步(第一次启动时尽快同步) initstepslew 20
三、启动并启用 chrony 服务
# 启动服务 sudo systemctl start chronyd # 设置开机自启 sudo systemctl enable chronyd
注意:服务名在某些系统是 chronyd,在配置文件中对应的是 chronyd.service。
四、验证时间同步状态
-
查看时间同步状态
chronyc tracking
输出示例:
Reference ID : 8C9180C0 (ntp.aliyun.com) Stratum : 3 Ref time (UTC) : Thu Oct 17 08:23:45 2024 System time : 0.000002345 seconds slow Last offset : +0.000001234 seconds RMS offset : 0.000005678 seconds Frequency : 10.234 ppm slow
System time
显示当前系统时间偏差,越接近 0 越好。Stratum
层级越低表示越接近原子钟源(1~2 最佳)。
-
查看当前使用的 NTP 服务器
chronyc sources -v
输出中会列出你配置的服务器及其状态:
^*
表示当前主时间源^?
表示无法连接或未响应
-
强制立即同步(测试用)
sudo chronyc makestep
此命令会强制立即将系统时间调整到与 NTP 服务器一致(跳变),适用于时间偏差较大的情况。
五、防火墙配置(如需作为服务端)
如果本机作为局域网时间服务器,需放行 UDP 123 端口:
sudo firewall-cmd --add-service=ntp --permanent sudo firewall-cmd --reload
六、常见问题排查
-
时间偏差过大导致无法同步?
可在配置中添加makestep
指令,允许首次同步时直接跳变:makestep 1.0 3
表示前 3 次同步中,若偏差超过 1 秒,则直接跳变调整。
-
chronyd 服务无法启动?
检查是否已有ntpd
或systemd-timesyncd
正在运行,冲突会导致端口占用:sudo systemctl stop ntpd sudo systemctl disable ntpd
chronyc 命令提示 "501 Not authorised"?
检查/etc/chrony.conf
中是否配置了cmdallow
或cmddeny
,或确认当前用户是否有权限(通常需 root)。
基本上就这些。配置完成后,系统会自动保持时间同步,建议定期使用
chronyc tracking检查偏差情况。对于关键业务服务器,建议搭配监控脚本定期告警时间偏移。









