在CentOS8中默认不再支持ntpd软件包,也无法通过官方软件仓库安装, CentOS8上使用Chrony配置NTP服务器,用于同步时间。 它有两个程序,chrony和chronyd, chronyd是守护进程 ,chrony是一个命令行界面程序,可以用来监控chronyd的性能,并修改各种操作参数。
个人测试Centos8默认将chrony集成的系统中,并且自动启动,只要通过 timedatectl set-timezone “Asia/Shanghai 设置好时区就能自动通过互联网修正你服务器的时间。
如果你的系统安装完没有此软件,可以通过 yum -y install chrony 安装,然后启动服务 systemctl enable –now chronyd 。
Centos8应用chrony作为NTP服务器
使用chrony作为时间同步服务器相比之前配置也更简单,修改时区后操作以下四步即可。
-
修改配置文件 vi /etc/chrony.conf ,将 allow 172.16.1.0/24 // 172.16.1.0/24 为允许同步时间的网段。
-
systemctl restart chronyd
-
timedatectl set-ntp true
-
firewall-cmd –add-service=ntp –permanent
然后就可以通过客户端测试了,如果其它客户端也是使用chrony与此服务器进行时间同步, vi /etc/chrony.conf ,将pool 2.centos.pool.ntp.org iburst注释掉,然后添加 server 172.16.1.X(时间服务器IP) iburst ,然后重启 chronyd 即可。
如何保证时间服务器本身时间正确
在chrony的配置文件中有pool 2.centos.pool.ntp.org iburst,配置时间服务器时不要把它注释掉,这样每次重启chronyd服务时,会自动与 2.centos.pool.ntp.org 同步时间,效果与之前使用ntpd手动同步时间的命令:ntpdate -u 2.centos.pool.ntp.org 相同,在 chronyd 服务启动以后,会按软件自身的方案进行校正时间。
centos6/7中,可以使用ntpdate命令,也可以使用ntpd。使用ntpd服务,要好于ntpdate加cron的组合。 由于ntpd有一个自我保护设置, 如果本机与上源时间相差太大, ntpd不运行,所以很多人主要使用 ntpdate 同步时间, 但使用ntpdate同步时间,会造成时间的跳跃,对一些依赖时间的程序和服务会造成影响。 所以理想的做法为,在开机的时候,使用ntpdate强制同步时间,在其他时候使用ntpd服务来同步时间,