在线安装
# APT 系统 (Debian/Ubuntu)
sudo apt install chrony
# YUM 系统 (RHEL/CentOS 7)
sudo yum install chrony
# DNF 系统 (RHEL/CentOS 8+)
sudo dnf install chrony
手动离线安装
- 访问 Chrony 下载页面
- 在历史版本中找到 Chrony 2.2.1 版本,点击红色框内的下载链接获取安装包
- 解压
tar -zxvf chrony-2.2.1.tar.gz
- 编译并安装
cd chrony-2.2.1
./configure --prefix=/usr
make
make install
- 验证
[root@localhost chrony-2.2.1]# chronyd -v
chronyd (chrony) version 2.2.1 (+CMDMON +NTP +REFCLOCK +RTC -PRIVDROP -SCFILTER +SECHASH +ASYNCDNS +IPV6 -DEBUG)
- 部署配置文件和服务控制脚本
[root@localhost chrony-2.2.1]# cp examples/chrony.conf.example2 /etc/chrony.conf
[root@localhost chrony-2.2.1]# cp examples/chrony*.service /usr/lib/systemd/system/
[root@localhost chrony-2.2.1]# ls /usr/lib/systemd/system/chrony*.service
- 启动服务与设置自启动
#启动服务
[root@localhost chrony-2.2.1]# systemctl start chronyd.service
#加入开机自启
[root@localhost chrony-2.2.1]# systemctl enable chronyd.service
#检查服务状态
[root@localhost chrony-2.2.1]# systemctl status chronyd.service
配置
- 服务端
[root@localhost chrony-2.2.1]# vim /etc/chrony.conf
#编辑该行,设置ntp服务器地址,pool.ntp.org 替换为ntp服务器地址,注:保留1个即可,其他NTP服务器地址注销
pool pool.ntp.org iburst
#默认会去ntp服务池中请求,当需要设置当前设备为时钟源时可以设置为如下格式
server 127.0.0.1 iburst
# Allow NTP client access from local network.
allow 192.168.0.0/16
# 允许哪个网段的客户端同步时间
allow 192.168.94.0/24
注意:/后的数字表示的是子网掩码的位数,例如:子网掩码为255.255.255.0应当转换为/24
# Serve time even if not synchronized to a time source.
# 允许NTP客户端从本地网络访问,即使不能和一个远程服务器时间源同步,也能继续为其他客户端提供时间同步服务
# 10 代表
local stratum 10
说明:
local stratum 10是NTP服务器的一个设置,它允许NTP客户端从本地网络访问,即使不能和一个远程服务器时间源同步,也能继续为其他客户端提供时间同步服务。10代表当前服务器设置为第10层,足够表示当前主机所在的局域网。选择stratum 10可以防止机器本身的时间与真实时间混淆,可以保证该机器不会将本身的时间授给那些可以连接同步到真实时间的ntp服务器的ntp客户端。
- 客户端
[root@localhost chrony-2.2.1]# vim /etc/chrony.conf
#编辑该行,设置ntp服务器地址,pool.ntp.org 替换为ntp服务器地址,注:保留1个即可,其他NTP服务器地址注销
pool pool.ntp.org iburst
#默认会去ntp服务池中请求,当需要设置当前设备为时钟源时可以设置为如下格式
server 127.0.0.1 iburst
仅配置此项即可
检查
配置完全正确输出应当与下方类似:
[root@node1 ~]# timedatectl
Local time: 五 2020-05-29 11:28:12 EDT
Universal time: 五 2020-05-29 15:28:12 UTC
RTC time: 五 2020-05-29 15:28:12
Time zone: America/New_York (EDT, -0400)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
[root@node1 ~]# chronyc sources
210 Number of sources = 1
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* filesystem 11 6 17 34 -520ns[+7955ns] +/- 15ms
注意:System clock synchronized
和 NTP service
后面的状态
常见问题及解决
1. 时间不同步问题
现象:配置后 chrony 不会立即同步时间
解决:执行强制同步命令
sudo chronyc -a makestep
2. 权限错误
现象:执行命令时提示 501 not authorised chrony
原因:缺少管理员权限
解决:使用 sudo
执行命令
sudo chronyc -a makestep