chrony时间同步怎么使用

linux admin 5天前 51次浏览 0个评论

介绍

chrony 是 Linux 下更现代、更精确的时间同步工具,相比 ntpdrdate,它更适合动态网络环境(如移动设备或频繁断网的服务器),并能更快地同步时间。

省流

sudo apt install chrony  # Debian/Ubuntu
sudo systemctl enable --now chrony

以下是 chrony 的安装、配置和使用方法


1. 安装 chrony

Debian/Ubuntu

sudo apt update
sudo apt install chrony

CentOS/RHEL

sudo yum install chrony  # CentOS 7
sudo dnf install chrony  # CentOS 8+/RHEL 8+

启动并设置开机自启

sudo systemctl enable --now chronyd

2. 基本配置

配置文件路径

  • 主配置文件: /etc/chrony/chrony.conf(Debian/Ubuntu)
    /etc/chrony.conf(CentOS/RHEL)

常用配置选项

  1. 指定时间服务器(替换默认的 NTP 服务器):
    server ntp.aliyun.com iburst
    server time.google.com iburst
    server time.nist.gov iburst
    
    • iburst 表示初始同步时快速发送多个请求,加速同步。
    • 国内推荐使用阿里云 NTP:ntp.aliyun.com
  2. 允许本地网络同步(可选):
    allow 192.168.1.0/24  # 允许该子网的设备同步时间
    
  3. 启用硬件时钟同步(如果系统有 RTC 时钟):
    rtcsync
    
  4. 调整同步策略
    makestep 1.0 3   # 如果时间偏差 >1秒,前 3 次更新会强制跳步
    

修改后重启 chrony

sudo systemctl restart chronyd

3. 常用命令

查看时间同步状态

chronyc tracking

输出示例:

Reference ID    : 5BBD59C3 (time.google.com)
Stratum         : 2
Ref time (UTC)  : Thu Oct 05 12:34:56 2023
System time     : 0.000123 seconds slow of NTP time
Last offset     : +0.000045 seconds
RMS offset      : 0.000012 seconds
Frequency       : 1.234 ppm slow
Update interval : 64.2 seconds

手动立即同步

sudo chronyc makestep

查看当前时间源

chronyc sources -v

输出示例:

MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^* time.google.com               1   6   377    45    +12us[  +23us] +/-   15ms
^+ ntp.aliyun.com                2   6   377    43    +45us[  +67us] +/-   20ms

检查 NTP 服务器是否可用

chronyc activity

输出示例:

200 OK
2 sources online
0 sources offline
0 sources doing burst

4. 高级调试

强制同步并检查

sudo chronyc waitsync

(等待 chrony 完成同步,超时默认 3 秒)

查看详细统计信息

chronyc sourcestats -v

检查 chrony 服务状态

sudo systemctl status chronyd

5. 常见问题

问题 1:时间不同步

  • 可能原因
    • 防火墙阻止 UDP 123 端口。
    • 配置的 NTP 服务器不可用。
  • 解决方法
    sudo chronyc sources -v  # 检查服务器状态
    sudo ufw allow 123/udp    # 开放防火墙(如果使用 UFW)
    

问题 2:时间偏差大

  • 强制跳步同步
    sudo chronyc makestep
    
  • 调整 makestep 参数(在 /etc/chrony/chrony.conf):
    makestep 1.0 3  # 允许前 3 次同步时直接跳步
    

6. 对比 rdate 和 chrony

特性 rdate chrony
同步方式 单次 TCP 同步 持续 NTP 协议同步
精度 秒级 毫秒/微秒级
适用场景 简单脚本或老旧系统 现代服务器、动态网络环境
资源占用 低(后台守护进程)
自动调整时钟 不支持 支持(平滑同步或跳步)

总结

  • 推荐使用 chrony:它更精准、稳定,适合长期运行的系统。
  • rdate 仅适合临时用途:例如无网络环境的初始化时间设置。

按上述步骤配置后,你的系统时间会自动保持高精度同步。


VPS小白 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:chrony时间同步怎么使用
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址