如何在 CentOS 8 上配置 NTP
这篇文章将向您介绍网络时间协议(NTP)、其安装以及在 CentOS 上的配置方法。此外,我们还将向您展示在 CentOS 系统上设置 NTP 服务器和客户端的过程。那么,让我们一起踏上这段旅程吧!
什么是NTP?
网络时间协议:顾名思义,它是一种用于同步网络中系统上的内部时钟计时的协议。该协议涵盖本地网络上的同步机器以及与互联网服务器的同步。它通常嵌入在客户端-服务器设置中,但也可以用于点对点时间同步。操作系统管理时区,而 NTP 用于同步协调世界时 (UTC)。查看下图,它代表 NTP 的工作原理:
NTP 守护进程:
早期用于同步日期和时间设置的 ntpd 守护进程已被拒绝,并且不再可供当前的 Linux 系统(如 Fedora 30、Ubuntu 20.04 和 CentOS 8)访问。“Chrony”(RedHat 开发的 NTP 实现)取代了它NTP 守护进程。
什么是克罗尼?
Chrony 是一种与 ntpd 不同的 NTP 协议实现形式。它被配置为 NTP 服务器或 NTP 客户端。 Chrony 由两部分组成:
chronyd:这是一个用户空间守护进程。
chronyc:用于自定义 chronyd 的命令行应用程序。
与 chrony 相比,ntpd 需要很长时间才能更改未永久连接或通电的系统的时钟。这一事实背后的原因是根据对时钟偏移和漂移的观察进行了一些细微的调整。硬件时钟的稳定性还受到温度波动的影响,在机器通电时温度波动可能相当大。相比之下,chrony 可以调整以适应系统时钟的变化。
有哪些 chronyd 可以做而 ntpd 不能做的事情?
Chronyd 帮助您计算硬件或实时时钟的增益或丢失率。该时间段可以利用该信息通过从实时时钟检索值来设置系统时间。
它还可以支持隔离网络,其中手动输入只是时间校正的形式。 Chronyd 可以查看进一步更新中修复的故障或错误,以估计计算机损失或增加了多少时间。经过此检查点后,chronyd 使用估计值来调整计算机时钟。
您应该选择哪个 NTP 守护进程?
所有经常断开或暂停然后恢复到网络的系统都应该考虑慢性。本节的示例是虚拟和移动系统。
对于通常始终处于开启状态的系统,应考虑使用 NTP 守护进程 ntpd。另外,需要广播或多播IP的系统应该选择采用ntpd。
在 CentOS 上安装 Chrony:
在将 chrony 配置为 NTP 服务器或客户端之前,必须首先确保您的系统上已安装 chrony。如果您还没有,请写出下面给出的命令将其安装在 CentOS 系统上:
输入“y”以允许进程下载 chrony。
下载 chrony 后,使用以下命令启动并启用 chronyd 服务:
现在,检查 chronyd 服务的状态并确保该服务正在运行。
将 Chrony 配置为 NTP 服务器:
我们正在走向时间配置的过程。现在,我们将向您展示 chrony 作为 NTP 服务器的配置方法。首先,在 Vi 编辑器中打开 chrony 配置文件:
现在,浏览此配置文件并取消注释引用允许网络地址的行。
由于 chrony 文件是在 Vi 编辑器中打开的,因此要在上述行中插入或删除“#”,我们必须切换到 Vi 插入模式。为此,您必须按“Esc”。
如果您没有写入或更改文件中某些内容的权限,请先使用下面给出的命令更改文件权限。
要保存更改并退出 Vi 编辑器,请输入“:wq ”并按 Enter 键。
现在,重新启动 chronyd 服务:
现在,打开防火墙端口以允许 NTP 传入请求。
这就是在 CentOS 中基于 chrony 配置 NTP 服务器的方法。
将 Chrony 配置为 NTP 客户端:
您想将 chrony 配置为 NTP 客户端而不是 NTP 服务器吗?不用担心!本文接下来的部分将演示将 chrony 配置为 NTP 客户端的方法。首先,在 CentOS 系统上安装 chrony:
之后,使用以下命令启用 chronyd 服务:
现在是时候对 chrony 配置文件进行一些更改了。这些更改对于配置客户端至关重要。
在 chrony 配置文件中添加以下给出的行并保存更改。
在终端中,使用以下命令重新启动 chronyd 服务:
现在,检查您的 NTP 源。您配置的 NTP 服务器应该存在于输出列表中。