题目描述
配置 NTP
- 配置您的系统,使其成为 materials.example.com 的 NTP 客户端。(注:materials.example.com 是 classroom.example.com 的 DNS 别名)
核心命令
systemctl start chronyd.service systemctl status chronyd.service systemctl enable chronyd.service vim /etc/chrony.conf -> server materials.example.com iburst systemctl restart chronyd.service timedatectl
操作过程
NTP 即 “Network Time Protocol”(网络时间协议),配置使用 NTP 可以有效确保服务器上的时间与标准时间保持一致。在 RedHat Linux 系统中,默认使用名为 “chronyd” 的程序作为 NTP 客户端以及服务器端(”chron” 有“计时”之意。)。
首先,查看 chronyd
程序的当前运行状态,具体命令如下:
systemctl status chronyd.service
如返回的信息中包含 active (running)
则表明 chronyd
程序正在运行。否则,就使用如下命令启动 chronyd
程序:
systemctl start chronyd.service
之后,执行如下命令,确保 chronyd
程序在系统开机时自启动:
systemctl enable chronyd.service
接着,使用 vim
编辑器编辑 chronyd
程序的配置文件 /etc/chrony.conf
, 具体命令如下:
vim /etc/chrony.conf
找到 /etc/chrony.conf
文件中的 server _gateway iburst
一行,使用 #
将该行注释掉,即修改成下面这样:
#server _gateway iburst
接着,我们在 #server _gateway iburst
这一行的下面,写入如下内容:
server materials.example.com iburst
注:
①
materials.example.com
是指提供 NTP 服务的服务器;②
iburst
用于当 NTP 服务器不可达时,以默认发包速率的 8 倍速率向 NTP 服务器发送数据包,以期尽快建立与 NTP 服务器的联系(”burst” 有爆发、塞满之意)。
之后,使用如下命令重启一下 chronyd
程序,确保刚才的配置文件被重新加载并检验配置文件是否存在错误(如果配置文件出错,则重启会失败并报错),具体命令如下:
systemctl restart chronyd.service
最后,我们可以使用 timedatectl
命令查看 NTP 客户端(即本机)是否已正常获取网络时间以及 NTP 服务器是否在正常运行。但是,NTP 客户端在大多数情况下都不会立即同步来自 NTP 服务器的网络时间,此时,在返回的信息中 “System clock synchronized(系统时钟是否已同步)”后面显示的是 “no(否)”,但只要 “NTP service(NTP 服务)”后面显示的是 “active(已激活)”,一般就没什么大问题。回显信息参考如下:
Local time: Wed 2021-11-17 15:07:18 EST Universal time: Wed 2021-11-17 20:07:18 UTC RTC time: Wed 2021-11-17 20:07:07 Time zone: America/New_York (EST, -0500) System clock synchronized: no NTP service: active RTC in local TZ: no
若干分钟之后,我们再次执行 timedatectl
命令查询系统时间配置,一般就可以看到 NTP 客户端已正常完成网络时钟同步的提示信息 System clock synchronized: yes
. 回显信息参考如下:
Local time: Wed 2021-11-17 15:17:38 EST Universal time: Wed 2021-11-17 20:17:38 UTC RTC time: Wed 2021-11-17 20:09:09 Time zone: America/New_York (EST, -0500) System clock synchronized: yes NTP service: active RTC in local TZ: no