Linux服务器时间同步配置:从排查到开机自动校时

Linux 服务器时间同步配置的核心目标,是让系统时钟长期跟随可靠的时间源,并在重启后自动恢复同步。
判断是否需要处理,先看 timedatectl 的输出:如果 System clock synchronized 为 no,或者时间与标准时间相差超过几秒,就应该配置 NTP 客户端。
本文以常见发行版为例,给出可直接执行的步骤,同时说明容易踩的坑。

先确认当前时间状态和可用工具

登录服务器后,先运行:

timedatectl

重点看三行:Local time 是否是你期望的时区时间,NTP service 是否处于 active,System clock synchronized 是否为 yes。
如果时区不对,先设置时区,例如:

sudo timedatectl set-timezone Asia/Shanghai

接着确认系统里安装了哪个时间同步服务。
常见组合有两种:较新的发行版默认使用 systemd-timesyncd,而很多服务器环境会安装功能更完整的 chrony。
用下面命令判断:

systemctl status chronyd 2>/dev/null | head -5
systemctl status systemd-timesyncd 2>/dev/null | head -5

不要同时启用两个 NTP 客户端,否则它们会争抢调整系统时钟,导致同步状态反复。
选一个即可:需要更细的监控和手动校时用 chrony;
只要求基础自动同步用 systemd-timesyncd。

使用 chrony 完成同步配置

chrony 适合大多数服务器场景,配置集中在 /etc/chrony.conf 或 /etc/chrony/chrony.conf。
先备份原文件:

sudo cp /etc/chrony.conf /etc/chrony.conf.bak

编辑配置文件,把默认的时间源替换为可用 NTP 服务器。
国内环境可参考以下写法,保留多个来源提高可用性:

server ntp.aliyun.com iburst
server ntp1.aliyun.com iburst
server time.cloudflare.com iburst

iburst 表示启动时快速发送一组请求,加快首次同步。
保存后重启服务并设为开机自启:

sudo systemctl restart chronyd
sudo systemctl enable chronyd

如果系统启用了防火墙,需要放行 NTP 使用的 UDP 123 端口。
以 firewalld 为例:

sudo firewall-cmd --add-service=ntp --permanent
sudo firewall-cmd --reload

使用 ufw 的环境则执行:

sudo ufw allow 123/udp

使用 systemd-timesyncd 的轻量方案

如果系统没有 chrony,且只需要基础同步,可以检查 /etc/systemd/timesyncd.conf。
取消 NTP= 行的注释并写入服务器:

[Time]
NTP=ntp.aliyun.com ntp1.aliyun.com
FallbackNTP=time.cloudflare.com

然后启动并启用服务:

sudo systemctl restart systemd-timesyncd
sudo systemctl enable systemd-timesyncd

这个方案配置简单,但不提供 chrony 那样的详细偏移统计。
如果后续需要排查时间漂移原因,再换成 chrony 更合适。

验证同步是否真正生效

配置完成后不要只看服务是否 running,要确认时钟已经同步。
运行:

timedatectl

当 System clock synchronized 显示 yes,说明同步成功。
使用 chrony 时还可以查看时间源状态:

chronyc sources -v
chronyc tracking

chronyc tracking 中的 System time 表示本机与参考源的偏差,正常应在毫秒级。
刚配置完可能还需要几十秒到几分钟收敛,可以稍等再查。

容易踩的坑和排查思路

时间仍然不准:先确认没有两个 NTP 服务同时运行。
用 systemctl status 检查 chronyd 和 systemd-timesyncd,停掉不需要的那个。

显示同步但偏差很大:如果系统时间与真实时间相差过多,某些服务会拒绝大幅跳变。
可以先停止 NTP 服务,手动校准一次,再启动:

sudo systemctl stop chronyd
sudo chronyd -q 'server ntp.aliyun.com iburst'
sudo systemctl start chronyd

防火墙或云安全组拦截:NTP 走 UDP 123,除了系统防火墙,还要检查云厂商安全组是否放行出方向。
如果服务器无法访问外网 NTP,可以改用内网时间源或自建 NTP 服务。

虚拟机时间漂移:部分虚拟化环境建议安装增强工具,并确认宿主机时间正常。
仅靠 NTP 客户端未必能完全消除漂移。

常见疑问

配置后需要重启服务器吗?
不需要。
启动并 enable 服务后,重启会自动同步;
当前会话中等待服务完成同步即可。

可以只用 IP 不用域名吗?
可以,但域名能在服务商切换 IP 时保持可用。
建议同时配置多个来源,避免单点故障。

同步会不会影响正在运行的服务?
正常的小幅校时不会。
如果时间偏差很大,首次同步可能产生跳变,建议在业务低峰期处理,并提前确认依赖时间的应用是否有特殊要求。

分享到:
上一篇
Linux RAID阵列重建完整操作指南
下一篇
Linux find 进阶:按时间、大小和权限组合筛选文件
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意