Sleepstars 的记录室

Sleepstars 的记录室

Debian 13 实现高精度时间同步避免同步误差

133
2025-10-22

TL;DR:Chrony 更快、更稳、更聪明,已在多数发行版中取代 ntpd,尤其适合云主机、虚拟机和不稳定网络环境。


它们各自是什么?

  • NTP(ntpd):传统的 NTP 守护进程,持续与上游时钟对齐,收敛慢、对网络质量较敏感。

  • Chrony(chronyd/chronyc):现代实现,使用更灵活的算法,启动即快速对时,对抖动、丢包、间歇联网更友好。

关键差异一页表

维度

Chrony

NTP (ntpd)

启动收敛

秒级收敛

分钟级

网络适应性

(抖动/丢包/断网后恢复)

一般(假设稳定在线)

精度与稳定

更高(常见达到几十微秒级)

毫秒级为主

虚拟化/云环境

优秀(对漂移建模好)

容易漂移

资源占用

轻量

略高

离线能力

可按漂移率预估并保持走时

基本无

Debian 下安装

一行命令即可解决:

sudo apt install chrony -y

适用场景

  • 服务器/云主机/容器/虚拟机:Chrony 更佳

  • 笔记本/嵌入式/间歇联网设备:Chrony 更佳

  • 遗留环境或特定合规要求:可能仍用 ntpd

只能说 Chrony 完胜!

常用命令对照

Chrony:

# 查看整体状态与误差估计
chronyc tracking

# 查看时间源与质量
chronyc sources -v

# 立刻与源强制对齐(偶发极端偏差时)
sudo chronyc makestep

ntpd:

# 查看已知时间服务器及偏移
ntpq -p

# 强制步进(依赖配置)
sudo service ntp stop && sudo ntpd -gq && sudo service ntp start

最小可用配置示例

如果使用 apt 安装则默认启用。

/etc/chrony.conf

# 上游时间源(示例)
server time.google.com iburst
server 0.pool.ntp.org iburst
server 1.pool.ntp.org iburst

# 记录硬件时钟漂移
driftfile /var/lib/chrony/drift

# 允许本机查询
allow 127.0.0.1

重载:

sudo systemctl enable --now chronyd
chronyc sources -v

发行版趋势

主流发行版(RHEL/CentOS 7+、Ubuntu 18.04+ 等)默认 Chrony