1、简介

Chrony是一个开源的自由软件,像CentOS 7或基于RHEL 7操作系统,已经是默认服务,默认配置文件在 /etc/chrony.conf 。它能保持系统时间与时间服务器(NTP)同步,让时间始终保持同步。相对于NTP时间同步软件,占据很大优势。其用法也很简单。Chrony有两个核心组件,分别是:

chronyd:是守护进程,主要用于调整内核中运行的系统时间和时间服务器同步。它确定计算机增减时间的比率,并对此进行调整补偿。

chronyc:提供一个用户界面,用于监控性能并进行多样化的配置。它可以在chronyd实例控制的计算机上工作,也可以在一台不同的远程计算机上工作

NTP使用123/UDP端口协议

2、使用方式

1)系统默认已经安装,如未安装,请执行以下命令安装:
yum install chrony -y

2)启动并加入开机自启动
systemctl enable chronyd.service
systemctl start chronyd.service

3)查看状态
systemctl status chronyd.service

4)配置文件详解
cat /etc/chrony.conf

# 使用pool.ntp.org项目中的公共服务器。以server开始,理论上你想添加多少时间服务器都可以。
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst

# 根据实际时间计算出服务器增减时间的比率,然后记录到一个文件中,在系统重启后为系统做出最佳时间补偿调整。
driftfile /var/lib/chrony/drift

# chronyd根据需求减慢或加速时间调整,
# 在某些情况下系统时钟可能漂移过快,导致时间调整用时过长。
# 该指令强制chronyd调整时期,大于某个阀值时步进调整系统时钟。
# 只有在因chronyd启动时间超过指定的限制时(可使用负值来禁用限制)没有更多时钟更新时才生效。
makestep 1.0 3

# 将启用一个内核模式,在该模式中,系统时间每11分钟会拷贝到实时时钟(RTC)。
rtcsync

# Enable hardware timestamping on all interfaces that support it.
# 通过使用hwtimestamp指令启用硬件时间戳
#hwtimestamp eth0
#hwtimestamp eth1
#hwtimestamp *

# Increase the minimum number of selectable sources required to adjust
# the system clock.
#minsources 2

# 指定一台主机、子网,或者网络以允许或拒绝NTP连接到扮演时钟服务器的机器
#allow 192.168.0.0/16
#deny 192.168/16

# Serve time even if not synchronized to a time source.
local stratum 10

# 指定包含NTP验证密钥的文件。
#keyfile /etc/chrony.keys

# 指定日志文件的目录。
logdir /var/log/chrony

# Select which information is logged.
#log measurements statistics tracking

5)设置时区
查看当前系统时区
$ timedatectl
Local time: Fri 2018-2-29 13:31:04 CST
Universal time: Fri 2018-2-29 05:31:04 UTC
RTC time: Fri 2018-2-29 08:17:20
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: n/a

如果你当前的时区不正确,请按照以下操作设置。

查看所有可用的时区:

$ timedatectl list-timezones
筛选式查看在亚洲S开的上海可用时区:

$ timedatectl list-timezones | grep -E "Asia/S.*"
Asia/Sakhalin
Asia/Samarkand
Asia/Seoul
Asia/Shanghai
Asia/Singapore
Asia/Srednekolymsk

设置当前系统为Asia/Shanghai上海时区:
$ timedatectl set-timezone Asia/Shanghai

设置完时区后,强制同步下系统时钟:
$ chronyc -a makestep
200 OK

服务器端和客户端修改/etc/chrony.conf配置文件,添加
server xxxx.xx.xx.xx iburst

6)在客户端执行
chronyc sources //刷新一下同步情况
chronyc sources -v //查看时间同步源的状态
netstat -antpul | grep chron //查看该服务端口,并开通相应端口

最新文章

  1. 用PowerMock mock final类constructors
  2. 1211php面向对象
  3. EntityFunctions.AsNonUnicode
  4. 【转】VS2010中 C++创建DLL图解
  5. Android 网络框架 volley源码剖析
  6. Gradle里配置jetty实现静态资源的热部署
  7. 关于netbeans中的JComboBox(复选框)
  8. 对iframe跨域通信的封装
  9. PhotoSwipe简介(PhotoSwipe是一个适合在触摸屏手机上使用的相册展示包)
  10. visual studio 2013 快捷键大全、VS2013常用快捷键
  11. 2014年下半年计划—写博客,旅游,带女朋友拍写真
  12. haproxy配置直接重定向url
  13. 互联网挣钱info
  14. 整理收藏一份PHP高级工程师的笔试题
  15. Majority Element II 解答
  16. (五)CSS和JavaScript基础
  17. Electron 创建一个空白的界面
  18. mysql脚本手动修改成oracle脚本
  19. Win10系列:C#应用控件基础17
  20. 洛谷 P3159(BZOJ 2668)[CQOI2012]交换棋子

热门文章

  1. C#怎么统计网站当前在线人数
  2. Day15_阿里短信
  3. Python定位模块_PYTHONPATH变量
  4. PHP krsort() 函数
  5. centos7与centos6命令差异
  6. JavaWeb基础Day17 (JSP EL表达式 jstl标签库 beanutil工具类)
  7. 关于tf.cond函数中“正确”与“错误”函数中的普通python语句始终执行的问题
  8. SpringCloud生产消费者
  9. 为什么需要将网站封装为app?
  10. 分析"傍富婆发财"