Red Hat Training
A Red Hat training course is available for RHEL 8
第 29 章 使用 Chrony 套件配置 NTP
因为许多原因,系统准确计时非常重要。例如在网络中,需要准确的数据包和日志的时间戳。在 Linux 系统中,NTP
协议是由在用户空间运行的守护进程实现的。
用户空间守护进程更新内核中运行的系统时钟。系统时钟可以通过使用不同的时钟源来维护系统的时间。通常, 使用 时间戳计数器(TSC)。TSC 是一个 CPU 寄存器,它计算从上次重置的循环数。它非常快,分辨率很高,且不会被中断。
从 Red Hat Enterprise Linux 8 开始,NTP
协议由 chronyd
守护进程实现,它可从 chrony
软件包中的存储库中获得。
以下章节描述了如何使用 chrony 套件来配置 NTP。
29.1. chrony 套件介绍
chrony 是 网络时间协议(NTP)
的一种实现。您可以使用 chrony:
-
将系统时钟与
NTP
服务器同步 - 将系统时钟与参考时钟同步,如 GPS 接收器
- 将系统时钟与手动时间输入同步
-
作为
NTPv4(RFC 5905)
服务器或对等服务器,为网络中的其他计算机提供时间服务
在多数条件下,chrony 都会表现良好,包括时断时续的网络连接、有大量网络数据的网络、温度不稳定(普通计算机时钟对温度敏感)以及不持续运行或在虚拟机上运行的系统。
通过互联网镜像同步的两天机器之间的准确性通常在几毫秒之内,而对于 LAN 中的机器则为几十微秒。硬件时间戳或硬件参考时钟可以将两台计算机之间的准确性提高到子微秒级。
chrony 包括 chronyd
(一个在用户空间运行的守护进程)和 chronyc(可用来监控 chronyd
性能并在运行时更改各种操作参数的命令行程序)。
chrony 守护进程(chronyd
) 可以由命令行工具 chronyc 监控和控制。这个工具提供了一个命令提示,允许输入大量命令来查询 chronyd
的当前状态并修改其配置。在默认情况下,chronyd
只接受来自本地 chronyc 实例的命令,但它也可以被配置为接受来自远程主机的监控命令。应该限制远程访问。