PRF:20190409 How To Install And Configure Chrony As NTP Client.md

@arrowfeng
This commit is contained in:
Xingyu.Wang 2019-05-06 14:57:17 +08:00
parent fde05c2d9a
commit 636fc929b0

View File

@ -1,69 +1,59 @@
[#]: collector: (lujun9972) [#]: collector: (lujun9972)
[#]: translator: (arrowfeng) [#]: translator: (arrowfeng)
[#]: reviewer: ( ) [#]: reviewer: (wxy)
[#]: publisher: ( ) [#]: publisher: ( )
[#]: url: ( ) [#]: url: ( )
[#]: subject: (How To Install And Configure Chrony As NTP Client?) [#]: subject: (How To Install And Configure Chrony As NTP Client?)
[#]: via: (https://www.2daygeek.com/configure-ntp-client-using-chrony-in-linux/) [#]: via: (https://www.2daygeek.com/configure-ntp-client-using-chrony-in-linux/)
[#]: author: (Magesh Maruthamuthu https://www.2daygeek.com/author/magesh/) [#]: author: (Magesh Maruthamuthu https://www.2daygeek.com/author/magesh/)
如何正确安装和配置Chrony作为NTP客户端 如何安装和配置 Chrony 作为 NTP 客户端?
====== ======
NTP服务器和NTP客户端运行我们通过网络来同步时钟 NTP 服务器和 NTP 客户端可以让我们通过网络来同步时钟。之前,我们已经撰写了一篇关于 [NTP 服务器和 NTP 客户端的安装与配置][1] 的文章
在过去,我们已经撰写了一篇关于 **[NTP服务器和NTP客户端的安装与配置][1]** 的文章 如果你想看这些内容,点击上述的 URL 访问
如果你想看这些内容点击上述的URL访问。 ### Chrony 客户端
### 什么是Chrony客户端? Chrony 是 NTP 客户端的替代品。它能以更精确的时间和更快的速度同步时钟,并且它对于那些不是全天候在线的系统非常有用。
Chrony是NTP客户端的替代品。 chronyd 更小、更节能,它占用更少的内存且仅当需要时它才唤醒 CPU。即使网络拥塞较长时间它也能很好地运行。它支持 Linux 上的硬件时间戳,允许在本地网络进行极其准确的同步。
它能以更精确的时间和更快的速度同步时钟,并且它对于那些不是全天候在线的系统非常有用。
chronyd更小、更省电它占用更少的内存且仅当需要时它才唤醒CPU。
即使网络拥塞较长时间,它也能很好地运行。
它支持Linux上的硬件时间戳允许在本地网络进行极其准确的同步。
它提供下列两个服务。 它提供下列两个服务。
* **`chronyc:`** Chrony的命令行接口。 * `chronyc`Chrony 的命令行接口。
* **`chronyd:`** Chrony守护进程服务。 * `chronyd`Chrony 守护进程服务。
### 如何在 Linux 上安装和配置 Chrony
### 如何在Linux上安装和配置Chrony
由于安装包在大多数发行版的官方仓库中可用,因此直接使用包管理器去安装它。 由于安装包在大多数发行版的官方仓库中可用,因此直接使用包管理器去安装它。
对于 **`Fedora`** 系统, 使用 **[DNF 命令][2]** 去安装chrony. 对于 Fedora 系统,使用 [DNF 命令][2] 去安装 chrony。
``` ```
$ sudo dnf install chrony $ sudo dnf install chrony
``` ```
对于 **`Debian/Ubuntu`** 系统, 使用 **[APT-GET 命令][3]** 或者 **[APT 命令][4]** 去安装chrony. 对于 Debian/Ubuntu 系统,使用 [APT-GET 命令][3] 或者 [APT 命令][4] 去安装 chrony。
``` ```
$ sudo apt install chrony $ sudo apt install chrony
``` ```
对基于 **`Arch Linux`** 的系统, 使用 **[Pacman 命令][5]** 去安装chrony. 对基于 Arch Linux 的系统,使用 [Pacman 命令][5] 去安装 chrony。
``` ```
$ sudo pacman -S chrony $ sudo pacman -S chrony
``` ```
对于 **`RHEL/CentOS`** 系统, 使用 **[YUM 命令][6]** 去安装chrony. 对于 RHEL/CentOS 系统,使用 [YUM 命令][6] 去安装 chrony。
``` ```
$ sudo yum install chrony $ sudo yum install chrony
``` ```
对于**`openSUSE Leap`** 系统, 使用 **[Zypper 命令][7]** 去安装chrony. 对于 openSUSE Leap 系统,使用 [Zypper 命令][7] 去安装 chrony。
``` ```
$ sudo zypper install chrony $ sudo zypper install chrony
@ -71,20 +61,18 @@ $ sudo zypper install chrony
在这篇文章中,我们将使用下列设置去测试。 在这篇文章中,我们将使用下列设置去测试。
* **`NTP服务器:`** 主机名: CentOS7.2daygeek.com, IP:192.168.1.5, OS:CentOS 7 * NTP 服务器主机名CentOS7.2daygeek.comIP192.168.1.5OSCentOS 7
* **`Chrony客户端:`** 主机名: Ubuntu18.2daygeek.com, IP:192.168.1.3, OS:Ubuntu 18.04 * Chrony 客户端主机名Ubuntu18.2daygeek.comIP192.168.1.3OSUbuntu 18.04
服务器的安装请访问 [在 Linux 上安装和配置 NTP 服务器][1] 的 URL。
导航到 **[在Linux上安装和配置NTP服务器][1]** 的URL 我已经在 CentOS7.2daygeek.com 这台主机上安装和配置了 NTP 服务器,因此,将其附加到所有的客户端机器上。此外,还包括其他所需信息
`chrony.conf` 文件的位置根据你的发行版不同而不同。
我已经在`CentOS7.2daygeek.com`这台主机上安装和配置了NTP服务器因此将其附加到所有的客户端机器上。此外还包括其他所需信息 对基于 RHEL 的系统,它位于 `/etc/chrony.conf`
`chrony.conf`文件的位置根据你的发行版不同而不同。 对基于 Debian 的系统,它位于 `/etc/chrony/chrony.conf`
对基于RHEL的系统它位于`/etc/chrony.conf`。
对基于Debian的系统它位于`/etc/chrony/chrony.conf`。
``` ```
# vi /etc/chrony/chrony.conf # vi /etc/chrony/chrony.conf
@ -98,28 +86,25 @@ makestep 1 3
cmdallow 192.168.1.0/24 cmdallow 192.168.1.0/24
``` ```
更新配置后需要重启Chrony服务。 更新配置后需要重启 Chrony 服务。
对于sysvinit系统。基于RHEL的系统需要去运行`chronyd`而不是chrony。 对于 sysvinit 系统。基于 RHEL 的系统需要去运行 `chronyd` 而不是 `chrony`
``` ```
# service chronyd restart # service chronyd restart
# chkconfig chronyd on # chkconfig chronyd on
``` ```
对于systemctl系统。 基于RHEL的系统需要去运行`chronyd`而不是chrony。 对于 systemctl 系统。 基于 RHEL 的系统需要去运行 `chronyd` 而不是 `chrony`
``` ```
# systemctl restart chronyd # systemctl restart chronyd
# systemctl enable chronyd # systemctl enable chronyd
``` ```
使用像tackingsources和sourcestats这样的命令去检查chrony的同步细节。 使用像 `tacking`、`sources` 和 `sourcestats` 这样的子命令去检查 chrony 的同步细节。
去检查chrony的跟踪状态。
去检查 chrony 的追踪状态。
``` ```
# chronyc tracking # chronyc tracking
@ -138,7 +123,7 @@ Update interval : 2.0 seconds
Leap status : Normal Leap status : Normal
``` ```
运行sources命令去显示当前时间源的信息。 运行 `sources` 命令去显示当前时间源的信息。
``` ```
# chronyc sources # chronyc sources
@ -148,7 +133,7 @@ MS Name/IP address Stratum Poll Reach LastRx Last sample
^* CentOS7.2daygeek.com 2 6 17 62 +36us[+1230us] +/- 1111ms ^* CentOS7.2daygeek.com 2 6 17 62 +36us[+1230us] +/- 1111ms
``` ```
sourcestats命令显示有关chronyd当前正在检查的每个源的漂移率和偏移估计过程的信息。 `sourcestats` 命令显示有关 chronyd 当前正在检查的每个源的漂移率和偏移估计过程的信息。
``` ```
# chronyc sourcestats # chronyc sourcestats
@ -158,7 +143,7 @@ Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
CentOS7.2daygeek.com 5 3 71 -97.314 78.754 -469us 441us CentOS7.2daygeek.com 5 3 71 -97.314 78.754 -469us 441us
``` ```
chronyd配置为NTP客户端或对等端时你就能通过chronyc ntpdata命令向每一个NTP源发送和接收时间戳模式和交错模式报告。 chronyd 配置为 NTP 客户端或对等端时,你就能通过 `chronyc ntpdata` 命令向每一个 NTP 源发送/接收时间戳模式和交错模式的报告。
``` ```
# chronyc ntpdata # chronyc ntpdata
@ -191,15 +176,14 @@ Total RX : 46
Total valid RX : 46 Total valid RX : 46
``` ```
最后运行`date`命令。 最后运行 `date` 命令。
``` ```
# date # date
Thu Mar 28 03:08:11 CDT 2019 Thu Mar 28 03:08:11 CDT 2019
``` ```
为了立即切换系统时钟通过转换绕过任何正在进行的调整请以root身份发出以下命令手动调整系统时钟 为了立即跟进系统时钟,绕过任何正在进行的缓步调整,请以 root 身份运行以下命令(以手动调整系统时钟)。
To step the system clock immediately, bypassing any adjustments in progress by slewing, issue the following command as root (To adjust the system clock manually).
``` ```
# chronyc makestep # chronyc makestep
@ -212,13 +196,13 @@ via: https://www.2daygeek.com/configure-ntp-client-using-chrony-in-linux/
作者:[Magesh Maruthamuthu][a] 作者:[Magesh Maruthamuthu][a]
选题:[lujun9972][b] 选题:[lujun9972][b]
译者:[arrowfeng](https://github.com/arrowfeng) 译者:[arrowfeng](https://github.com/arrowfeng)
校对:[校对者ID](https://github.com/校对者ID) 校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
[a]: https://www.2daygeek.com/author/magesh/ [a]: https://www.2daygeek.com/author/magesh/
[b]: https://github.com/lujun9972 [b]: https://github.com/lujun9972
[1]: https://www.2daygeek.com/install-configure-ntp-server-ntp-client-in-linux/ [1]: https://linux.cn/article-10811-1.html
[2]: https://www.2daygeek.com/dnf-command-examples-manage-packages-fedora-system/ [2]: https://www.2daygeek.com/dnf-command-examples-manage-packages-fedora-system/
[3]: https://www.2daygeek.com/apt-get-apt-cache-command-examples-manage-packages-debian-ubuntu-systems/ [3]: https://www.2daygeek.com/apt-get-apt-cache-command-examples-manage-packages-debian-ubuntu-systems/
[4]: https://www.2daygeek.com/apt-command-examples-manage-packages-debian-ubuntu-systems/ [4]: https://www.2daygeek.com/apt-command-examples-manage-packages-debian-ubuntu-systems/