Linux配置时间同步 – chrony
一分耕耘,一分收获!既然打开了这篇文章《Linux配置时间同步 – chrony》,就坚持看下去吧!文中内容包含等等知识点...希望你能在阅读本文后,能真真实实学到知识或者帮你解决心中的疑惑,也欢迎大佬或者新人朋友们多留言评论,多给建议!谢谢!
一、chrony概述
chrony是一款开源的NTP时间同步软件,被广泛应用于Unix-like操作系统(比如Linux、BSD和macOS)以提供高精度的时间同步服务。该软件专注于性能和可靠性,在时间同步中具有低延迟、低CPU占用率和低内存消耗等优势。chrony由两个关键组件组成,分别是chronyd(服务器端)和chronyc(客户端)。
- chronyd:作为一个后台运行的守护进程,负责调整系统时钟并与时钟服务器同步,它通过平滑调整计算机的时钟增减速率来确保时间的准确性。
- chronyc:提供用户友好的界面,用于监控性能指标和灵活配置。它可在与chronyd实例相同的计算机上运行,也可以在远程计算机上运行以进行相关操作。
二、实验环境
2.1 实验拓扑
如图,两台服务器Server1、Server2连接到同一网络

2.2 本地环境规划
| 主机名 | IP地址 | 操作系统版本 | 内核版本 |
|---|---|---|---|
| Server1 | 172.16.0.134/24 | Rocky Linux 8.9 (Green Obsidian) | Linux 4.18.0-513.5.1.el8_9.x86_64 |
| Server2 | 172.16.0.150/24 | Rocky Linux 8.9 (Green Obsidian) | Linux 4.18.0-513.5.1.el8_9.x86_64 |
Net1网络中配置了NAT(网络地址转换),两台服务器均可以访问公网
三、配置时间同步
3.1 安装chrony
[root@Server1 ~]# rpm -qa | grep chrony chrony-4.2-1.el8.rocky.1.0.x86_64
Rokcy Linux 8.9版本默认安装了chrony,验证安装状态:
3.2 配置Server1从公网时间源服务器同步时间
编辑“/etc/chrony.conf”文件:
[root@Server1 ~]# vim /etc/chrony.conf # Use public servers from the pool.ntp.org project. # Please consider joining the pool (http://www.pool.ntp.org/join.html). # pool 2.rocky.pool.ntp.org iburst # 注释该行,添加如下两行,理论上想添加多少时间服务器都可以 Server ntp.aliyun.com iburst # 阿里时间源服务器 Server time1.cloud.tencent.com iburst # 腾讯时间源服务器
重启chronyd服务,并设置开机自启:
[root@Server1 ~]# systemctl restart chronyd [root@Server1 ~]# systemctl enable chronyd [root@Server1 ~]# systemctl is-active chronyd # 查看chronyd服务是否正常运行 active [root@Server1 ~]#
查看时间同步状态:
[root@Server1 ~]# chronyc sources MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* 203.107.6.88 2 6 37 63 +49us[+2956us] +/- 23ms ^- 106.55.184.199 2 6 127 60 +1891us[+1891us] +/- 47ms [root@Server1 ~]# [root@Server1 ~]# chronyc sources -v .-- Source mode '^' = server, '=' = peer, '#' = local clock. / .- Source state '*' = current best, '+' = combined, '-' = not combined, | / 'x' = may be in error, '~' = too variable, '?' = unusable. || .- xxxx [ yyyy ] +/- zzzz || Reachability register (octal) -. | xxxx = adjusted offset, || Log2(Polling interval) --. | | yyyy = measured offset, || \ | | zzzz = estimated error. || | | \ MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^* 203.107.6.88 2 6 77 3 -3557us[-3824us] +/- 26ms ^+ 106.55.184.199 2 6 257 1 +2021us[+2021us] +/- 46ms [root@Server1 ~]#
chronyc sources输出结果解析:
M
这表示信号源的模式。^表示服务器,=表示对等方,#表示本地连接的参考时钟。
S
此列指示源的状态。
* 表示chronyd当前同步到的源。
+ 表示可接受的信号源,与选定的信号源组合在一起。
– 表示被合并算法排除的可接受源。
?指示已失去连接性或其数据包未通过所有测试的源。它也显示在启动时,直到从中至少收集了3个样本为止。
x 表示chronyd认为是虚假行情的时钟(即,其时间与大多数其他来源不一致)
〜 表示时间似乎具有太多可变性的来源。
Name/IP address
这显示了源的名称或IP地址,或参考时钟的参考ID。
Stratum
这显示了来源的层,如其最近收到的样本中所报告的那样。层1表示一台具有本地连接的参考时钟的计算机。与第1层计算机同步的计算机位于第2层。与第2层计算机同步的计算机位于第3层,依此类推。
Poll
这显示轮询源的速率,以秒为单位的时间间隔的以2为底的对数。因此,值为6表示每64秒进行一次测量。chronyd会根据当前情况自动更改轮询速率。
Reach
这显示了源的可达性寄存器以八进制数字打印。寄存器有8位,并在每个从源接收或丢失的数据包上更新。值377表示从最后八次传输中收到了对所有用户的有效答复。
LastRx
此列显示多长时间前从来源接收到了最后一个好的样本(在下一列中显示)。未通过某些测试的测量将被忽略。通常以秒为单位。字母m,h,d或y表示分钟,小时,天或年。
Last sample
此列显示上次测量时本地时钟与源之间的偏移。方括号中的数字表示实际测得的偏移量。可以用ns(表示纳秒),us (表示微秒),ms(表示毫秒)或s(表示秒)作为后缀。方括号左侧的数字表示原始测量值,已调整为允许此后施加于本地时钟的任何摆度。
+/-指示器后面的数字表示测量中的误差范围。正偏移表示本地时钟位于源时钟之前。
例如:现有时钟服务器time_server:它的层级是2,一台主机node1从time_server同步时间,那么node1主机的层级就是3,以此类推另一台在node1同步时间,那它的层级就是4。

3.3 配置Server2从Server1时间源同步时间
Server1上再次编辑“/etc/chrony.conf”文件:
[root@Server1 ~]# vim /etc/chrony.conf # Use public servers from the pool.ntp.org project. # Please consider joining the pool (http://www.pool.ntp.org/join.html). # pool 2.rocky.pool.ntp.org iburst Server ntp.aliyun.com iburst Server time1.cloud.tencent.com iburst # Record the rate at which the system clock gains/losses time. driftfile /var/lib/chrony/drift # Allow the system clock to be stepped in the first three updates # if its offset is larger than 1 second. makestep 1.0 3 # Enable kernel synchronization of the real-time clock (RTC). rtcsync # Enable hardware timestamping on all interfaces that support it. #hwtimestamp * # Increase the minimum number of selectable sources required to adjust # the system clock. #minsources 2 # Allow NTP client acc ess from local network. #allow 192.168.0.0/16 allow 172.16.0.0/24 # 配置访问规则,仅允许该网络的客户端访问 # Serve time even if not synchronized to a time source. #local stratum 10 local stratum 10 # 即使未同步到时间源,也要提供时间同步服务,当前系统层级为10 # Specify file containing keys for NTP authentication. keyfile /etc/chrony.keys # Get TAI-UTC offset and leap seconds from the system tz database. leapsectz right/UTC # Specify directory for log files. logdir /var/log/chrony # Select which information is logged. #log measurements statistics tracking
重启chronyd服务:
[root@Server1 ~]# systemctl restart chronyd
防火墙放行ntp服务:
[root@Server1 ~]# firewall-cmd --add-service=ntp --permanent success [root@Server1 ~]# firewall-cmd --reload success
Server2上编辑“/etc/chrony.conf”文件:
[root@Server2 ~]# vim /etc/chrony.conf # Use public servers from the pool.ntp.org project. # Please consid er joining the pool (http://www.pool.ntp.org/join.html). # pool 2.rocky.pool.ntp.org iburst # 注释该行,添加下面一行 Server 172.16.0.134 iburst
重启chronyd服务,并设置开机自启:
[root@Server2 ~]# systemctl restart chronyd [root@Server2 ~]# systemctl enable chronyd
查看时间同步状态:

今天关于《Linux配置时间同步 – chrony》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于Linux,Linux系统,Shell脚本,Linux命令,linux入门,linux教程,linux学习,嵌入式Linux的内容请关注golang学习网公众号!
linux node.js有哪些优势
- 上一篇
- linux node.js有哪些优势
- 下一篇
- 现代 CSS 的顶级功能改变了网页设计
-
- 文章 · linux | 49分钟前 |
- Linux查看所有用户命令大全
- 140浏览 收藏
-
- 文章 · linux | 3小时前 |
- Linux系统更新与补丁管理技巧
- 218浏览 收藏
-
- 文章 · linux | 3小时前 |
- LinuxShell脚本入门教程指南
- 333浏览 收藏
-
- 文章 · linux | 4小时前 |
- Linux终端乱码解决方法大全
- 442浏览 收藏
-
- 文章 · linux | 6小时前 |
- LINUX数字排序技巧:月份版本高效排序方法
- 388浏览 收藏
-
- 文章 · linux | 6小时前 | GRUB update-grub Linux启动顺序 /etc/default/grub GRUB_DEFAULT
- Linux调整启动顺序全攻略
- 245浏览 收藏
-
- 文章 · linux | 8小时前 |
- Linux僵尸进程是什么?如何解决?
- 406浏览 收藏
-
- 文章 · linux | 13小时前 |
- LinuxRAID配置教程及搭建方法
- 412浏览 收藏
-
- 文章 · linux | 14小时前 |
- iftop与nload网络监控使用详解
- 466浏览 收藏
-
- 文章 · linux | 14小时前 |
- Linuxroot密码找回与重置教程
- 456浏览 收藏
-
- 文章 · linux | 1天前 |
- Linux用mkdir创建文件夹方法
- 226浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 485次学习
-
- ChatExcel酷表
- ChatExcel酷表是由北京大学团队打造的Excel聊天机器人,用自然语言操控表格,简化数据处理,告别繁琐操作,提升工作效率!适用于学生、上班族及政府人员。
- 3187次使用
-
- Any绘本
- 探索Any绘本(anypicturebook.com/zh),一款开源免费的AI绘本创作工具,基于Google Gemini与Flux AI模型,让您轻松创作个性化绘本。适用于家庭、教育、创作等多种场景,零门槛,高自由度,技术透明,本地可控。
- 3399次使用
-
- 可赞AI
- 可赞AI,AI驱动的办公可视化智能工具,助您轻松实现文本与可视化元素高效转化。无论是智能文档生成、多格式文本解析,还是一键生成专业图表、脑图、知识卡片,可赞AI都能让信息处理更清晰高效。覆盖数据汇报、会议纪要、内容营销等全场景,大幅提升办公效率,降低专业门槛,是您提升工作效率的得力助手。
- 3430次使用
-
- 星月写作
- 星月写作是国内首款聚焦中文网络小说创作的AI辅助工具,解决网文作者从构思到变现的全流程痛点。AI扫榜、专属模板、全链路适配,助力新人快速上手,资深作者效率倍增。
- 4536次使用
-
- MagicLight
- MagicLight.ai是全球首款叙事驱动型AI动画视频创作平台,专注于解决从故事想法到完整动画的全流程痛点。它通过自研AI模型,保障角色、风格、场景高度一致性,让零动画经验者也能高效产出专业级叙事内容。广泛适用于独立创作者、动画工作室、教育机构及企业营销,助您轻松实现创意落地与商业化。
- 3808次使用
-
- 命令行工具:应对Linux服务器安全挑战的利器
- 2023-10-04 501浏览
-
- 如何使用Docker进行容器的水平伸缩和负载均衡
- 2023-11-07 501浏览
-
- linux .profile的作用是什么
- 2024-04-07 501浏览
-
- 如何解决s权限位引发postfix及crontab异常
- 2024-11-21 501浏览
-
- 如何通过脚本自动化Linux上的K8S安装
- 2025-02-17 501浏览

