CentOS 7.x中正确设置时间与时钟服务器同步
Chrony是一个开源的自由软件，它能帮助你保持系统时钟与时钟服务器（NTP）同步，因此让你的时间保持精确。它由两个程序组成，分别是chronyd和chronyc。chronyd是一个后台运行的守护进程，用于调整内核中运行的系统时钟和时钟服务器同步。它确定计算机增减时间的比率，并对此进行补偿。chronyc提供了一个用户界面，用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计算机上工作，也可以在一台不同的远程计算机上工作。 在像CentOS 7之类基于RHEL的操作系统上，已经默认安装有Chrony。  Chrony配置 当Chrony启动时，它会读取/etc
NTP Chrony
220.181.108.78
这些都是什么[思考][打脸][伤心]
微博评论
2015-01-28T08:03:01.000
220.181.108.78
转发微博.
微博评论
2015-01-28T08:03:01.000
157.55.39.132
这个表盘好！
微博评论
2015-01-28T08:33:02.000
220.181.108.157
不是用NTPd吗？
微博评论
2015-01-28T09:33:02.000
219.134.212.95
@我的印象笔记
微博评论
2015-01-28T16:33:02.000
112.64.126.206
文章不错，如果配置项解释更详细一点就更好了，期待更好的作品。
gtdapf
2015-01-30T09:51:02.000
114.242.250.197
这个程序确实少见，不过看起来比 ntpd 简单些，虽然它底层也是用的 ntp 服务。
linux
2015-01-30T11:01:37.000
112.64.126.206
你好，请教你一个其他方面的问题：rhel7的网卡team在win8.1为宿主机vmware虚拟机测试存在问题，当我down掉active网卡时，它不会自动切换到另一款网卡上。不知道什么问题引起的？
gtdapf
2015-01-30T13:04:10.000
111.197.254.44
这个问题不懂，也许你可以去 QQ 群或论坛问问？
linux
2015-01-30T22:12:56.000
180.154.122.120
好的，谢谢你的回复
gtdapf
2015-02-01T06:05:51.000
112.64.126.206
好的，谢谢
gtdapf
2015-04-08T09:06:45.000
61.183.207.149
求指点 配置chronyd server端和client端有什么不一样的地方， 是服务器端就在/etc/chrony.conf 文件里面allow ×client IP× 吗？&nbsp;&nbsp;还有其他的操作吗？&nbsp;&nbsp;我这边做实验 A主机同步网络中的NTP服务器&nbsp;&nbsp;然后A允许B&nbsp;&nbsp;结果B去同步A的时候&nbsp;&nbsp;死活不行 chronyc source -v 看到状态是服务器不可达，但是AB之间是可以ping通的，求解
interface [Chrome 49.0|Windows 7]
2016-05-09T23:09:49.000
114.245.14.172
防火墙呢？不行你抓包试试。
linux [Chrome 50.0|Mac 10.11]
2016-05-10T19:04:03.000
61.183.207.149
两台主机防火墙都关闭了。抓包倒也是个绝招
interface [Chrome 49.0|Windows 7]
2016-05-10T23:00:29.000
61.183.207.149
千恩万谢！提醒我抓包 确实看到问题点了&nbsp;&nbsp;B主机去向A主机NTP同步，A会先通过ICMP确认B是否可达（应该是种安全措施），但是ICMP确认的结果却显示 主机B不可达。在A上手动PING能通。B上的iptable firewall selinux都关闭了。
interface [Chrome 49.0|Windows 7]
2016-05-10T23:29:23.000
114.245.14.172
所以，解决问题的终极大法：tcpdump &amp; gdb <br />
当你遇到百撕不得骑姐的问题时，就祭出如上神器吧！:D
linux [Chrome 50.0|Mac 10.11]
2016-05-11T20:01:31.000
61.183.207.149
确实！虽然还是没有解决问题，但是比不知道原因要好的多。谢谢指点
interface [Chrome 49.0|Windows 7]
2016-05-11T22:32:10.000
211.67.48.141
7版本的已经不用NTPD了
interface [Chrome 49.0|Windows 7]
2016-05-24T16:18:48.000
221.232.80.178
关闭Firewall 确实可以解决NTP同步问题，但是如果要启用Firewall，需要怎么配置防火墙呢？
来自湖北武汉的 Chrome 50.0|Windows 7 用户
2016-10-11T10:49:07.000
123.120.81.152
TCP/123 端口
linux [Chrome 53.0|Mac 10.11]
2016-10-11T17:00:51.000
123.120.81.152
TCP/123 端口
linux [Chrome 53.0|Mac 10.11]
2016-10-11T17:00:51.000
58.33.61.163
翻译后得意思 让人费解&nbsp;&nbsp;译者自己能读通顺？
来自上海的 QQ Browser 10.6|Windows 10 用户
2020-11-09T17:04:43.000
Chrony是一个开源的自由软件，它能帮助你保持系统时钟与时钟服务器（NTP）同步，因此让你的时间保持精确。它由两个程序组成，分别是chronyd和chronyc。chronyd是一个后台运行的守护进程，用于调整内核中运行的系统时钟和时钟服务器同步。它确定计算机增减时间的比率，并对此进行补偿。chronyc提供了一个用户界面，用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计算机上工作，也可以在一台不同的远程计算机上工作。 在像CentOS 7之类基于RHEL的操作系统上，已经默认安装有Chrony。  Chrony配置 当Chrony启动时，它会读取/etc
**Chrony**是一个开源的自由软件，它能帮助你保持系统时钟与时钟服务器（NTP）同步，因此让你的时间保持精确。它由两个程序组成，分别是chronyd和chronyc。chronyd是一个后台运行的守护进程，用于调整内核中运行的系统时钟和时钟服务器同步。它确定计算机增减时间的比率，并对此进行补偿。chronyc提供了一个用户界面，用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计算机上工作，也可以在一台不同的远程计算机上工作。


在像CentOS 7之类基于RHEL的操作系统上，已经默认安装有Chrony。


![](/data/attachment/album/201501/27/214655khfozbdfl666rdbh.jpg)


### Chrony配置


当Chrony启动时，它会读取/etc/chrony.conf配置文件中的设置。CentOS 7操作系统上最重要的设置有：


**server** - 该参数可以多次用于添加时钟服务器，必须以"server "格式使用。一般而言，你想添加多少服务器，就可以添加多少服务器。



```
server 0.centos.pool.ntp.org
server 3.europe.pool.ntp.org

```

**stratumweight** - stratumweight指令设置当chronyd从可用源中选择同步源时，每个层应该添加多少距离到同步距离。默认情况下，CentOS中设置为0，让chronyd在选择源时忽略源的层级。


**driftfile** - chronyd程序的主要行为之一，就是根据实际时间计算出计算机增减时间的比率，将它记录到一个文件中是最合理的，它会在重启后为系统时钟作出补偿，甚至可能的话，会从时钟服务器获得较好的估值。


**rtcsync** - rtcsync指令将启用一个内核模式，在该模式中，系统时间每11分钟会拷贝到实时时钟（RTC）。


**allow / deny** - 这里你可以指定一台主机、子网，或者网络以允许或拒绝NTP连接到扮演时钟服务器的机器。



```
allow 192.168.4.5
deny 192.168/16

```

**cmdallow / cmddeny** - 跟上面相类似，只是你可以指定哪个IP地址或哪台主机可以通过chronyd使用控制命令


**bindcmdaddress** - 该指令允许你限制chronyd监听哪个网络接口的命令包（由chronyc执行）。该指令通过cmddeny机制提供了一个除上述限制以外可用的额外的访问控制等级。



```
bindcmdaddress 127.0.0.1
bindcmdaddress ::1

```

**makestep** - 通常，chronyd将根据需求通过减慢或加速时钟，使得系统逐步纠正所有时间偏差。在某些特定情况下，系统时钟可能会漂移过快，导致该调整过程消耗很长的时间来纠正系统时钟。该指令强制chronyd在调整期大于某个阀值时步进调整系统时钟，但只有在因为chronyd启动时间超过指定限制（可使用负值来禁用限制），没有更多时钟更新时才生效。


### 使用chronyc


你也可以通过运行chronyc命令来修改设置，命令如下：


**accheck** - 检查NTP访问是否对特定主机可用


**activity** - 该命令会显示有多少NTP源在线/离线


![](/data/attachment/album/201501/27/214659i075xiy6aqhiqo9q.jpg)


**add server** - 手动添加一台新的NTP服务器。


**clients** - 在客户端报告已访问到服务器


**delete** - 手动移除NTP服务器或对等服务器


**settime** - 手动设置守护进程时间


**tracking** - 显示系统时间信息


你可以通过使用帮助命令查看完整的命令列表：


![](/data/attachment/album/201501/27/214701v22m12d60v68njdo.jpg)




---


via: <http://linoxide.com/linux-command/chrony-time-sync/>


作者：[Adrian Dinu](http://linoxide.com/author/adriand/) 译者：[GOLinux](https://github.com/GOLinux) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译，[Linux中国](http://linux.cn/) 荣誉推出

