如何安裝和配置 Chrony 作為 NTP 客戶端?
NTP 伺服器和 NTP 客戶端可以讓我們透過網路來同步時鐘。之前,我們已經撰寫了一篇關於 NTP 伺服器和 NTP 客戶端的安裝與配置 的文章。
如果你想看這些內容,點選上述的 URL 訪問。
Chrony 客戶端
Chrony 是 NTP 客戶端的替代品。它能以更精確的時間和更快的速度同步時鐘,並且它對於那些不是全天候線上的系統非常有用。
chronyd 更小、更節能,它佔用更少的記憶體且僅當需要時它才喚醒 CPU。即使網路擁塞較長時間,它也能很好地執行。它支援 Linux 上的硬體時間戳,允許在本地網路進行極其準確的同步。
它提供下列兩個服務。
chronyc
:Chrony 的命令列介面。chronyd
:Chrony 守護程式服務。
如何在 Linux 上安裝和配置 Chrony?
由於安裝包在大多數發行版的官方倉庫中可用,因此直接使用包管理器去安裝它。
對於 Fedora 系統,使用 DNF 命令 去安裝 chrony。
$ sudo dnf install chrony
對於 Debian/Ubuntu 系統,使用 APT-GET 命令 或者 APT 命令 去安裝 chrony。
$ sudo apt install chrony
對基於 Arch Linux 的系統,使用 Pacman 命令 去安裝 chrony。
$ sudo pacman -S chrony
對於 RHEL/CentOS 系統,使用 YUM 命令 去安裝 chrony。
$ sudo yum install chrony
對於 openSUSE Leap 系統,使用 Zypper 命令 去安裝 chrony。
$ sudo zypper install chrony
在這篇文章中,我們將使用下列設定去測試。
- NTP 伺服器:主機名:CentOS7.2daygeek.com,IP:192.168.1.5,OS:CentOS 7
- Chrony 客戶端:主機名:Ubuntu18.2daygeek.com,IP:192.168.1.3,OS:Ubuntu 18.04
伺服器的安裝請訪問 在 Linux 上安裝和配置 NTP 伺服器 的 URL。
我已經在 CentOS7.2daygeek.com 這臺主機上安裝和配置了 NTP 伺服器,因此,將其附加到所有的客戶端機器上。此外,還包括其他所需資訊。
chrony.conf
檔案的位置根據你的發行版不同而不同。
對基於 RHEL 的系統,它位於 /etc/chrony.conf
。
對基於 Debian 的系統,它位於 /etc/chrony/chrony.conf
。
# vi /etc/chrony/chrony.conf
server CentOS7.2daygeek.com prefer iburst
keyfile /etc/chrony/chrony.keys
driftfile /var/lib/chrony/chrony.drift
logdir /var/log/chrony
maxupdateskew 100.0
makestep 1 3
cmdallow 192.168.1.0/24
更新配置後需要重啟 Chrony 服務。
對於 sysvinit 系統。基於 RHEL 的系統需要去執行 chronyd
而不是 chrony
。
# service chronyd restart
# chkconfig chronyd on
對於 systemctl 系統。 基於 RHEL 的系統需要去執行 chronyd
而不是 chrony
。
# systemctl restart chronyd
# systemctl enable chronyd
使用像 tacking
、sources
和 sourcestats
這樣的子命令去檢查 chrony 的同步細節。
去檢查 chrony 的追蹤狀態。
# chronyc tracking
Reference ID : C0A80105 (CentOS7.2daygeek.com)
Stratum : 3
Ref time (UTC) : Thu Mar 28 05:57:27 2019
System time : 0.000002545 seconds slow of NTP time
Last offset : +0.001194361 seconds
RMS offset : 0.001194361 seconds
Frequency : 1.650 ppm fast
Residual freq : +184.101 ppm
Skew : 2.962 ppm
Root delay : 0.107966967 seconds
Root dispersion : 1.060455322 seconds
Update interval : 2.0 seconds
Leap status : Normal
執行 sources
命令去顯示當前時間源的資訊。
# chronyc sources
210 Number of sources = 1
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* CentOS7.2daygeek.com 2 6 17 62 +36us[+1230us] +/- 1111ms
sourcestats
命令顯示有關 chronyd 當前正在檢查的每個源的漂移率和偏移估計過程的資訊。
# chronyc sourcestats
210 Number of sources = 1
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
==============================================================================
CentOS7.2daygeek.com 5 3 71 -97.314 78.754 -469us 441us
當 chronyd 配置為 NTP 客戶端或對等端時,你就能透過 chronyc ntpdata
命令向每一個 NTP 源傳送/接收時間戳模式和交錯模式的報告。
# chronyc ntpdata
Remote address : 192.168.1.5 (C0A80105)
Remote port : 123
Local address : 192.168.1.3 (C0A80103)
Leap status : Normal
Version : 4
Mode : Server
Stratum : 2
Poll interval : 6 (64 seconds)
Precision : -23 (0.000000119 seconds)
Root delay : 0.108994 seconds
Root dispersion : 0.076523 seconds
Reference ID : 85F3EEF4 ()
Reference time : Thu Mar 28 06:43:35 2019
Offset : +0.000160221 seconds
Peer delay : 0.000664478 seconds
Peer dispersion : 0.000000178 seconds
Response time : 0.000243252 seconds
Jitter asymmetry: +0.00
NTP tests : 111 111 1111
Interleaved : No
Authenticated : No
TX timestamping : Kernel
RX timestamping : Kernel
Total TX : 46
Total RX : 46
Total valid RX : 46
最後執行 date
命令。
# date
Thu Mar 28 03:08:11 CDT 2019
為了立即跟進系統時鐘,繞過任何正在進行的緩步調整,請以 root 身份執行以下命令(以手動調整系統時鐘)。
# chronyc makestep
via: https://www.2daygeek.com/configure-ntp-client-using-chrony-in-linux/
作者:Magesh Maruthamuthu 選題:lujun9972 譯者:arrowfeng 校對:wxy
相關文章
- 如何在 Linux 上安裝、配置 NTP 伺服器和客戶端?Linux伺服器客戶端
- 配置安裝版Oracle客戶端Oracle客戶端
- NBU 8.0客戶端安裝和備份配置客戶端
- ntp客戶端配置多個時間源客戶端
- centos8使用chrony作為NTP伺服器CentOS伺服器
- graylog 客戶端的安裝配置客戶端
- 配置免安裝版Oracle客戶端Oracle客戶端
- 客戶端自動配置安裝(expect工具)客戶端
- 如何配置WSUS客戶端客戶端
- Oracle 客戶端安裝Oracle客戶端
- MySQL 客戶端安裝MySql客戶端
- zabbix 客戶端安裝客戶端
- oracle客戶端安裝Oracle客戶端
- redis伺服器/客戶端安裝與配置Redis伺服器客戶端
- WINDOWS8.1安裝ORACLE客戶端及配置WindowsOracle客戶端
- 如何在 Ubuntu 中安裝 QGit 客戶端UbuntuGit客戶端
- Laravel後臺作為客戶端,socket.io作為服務端,App或其他作為另一個客戶端Laravel客戶端服務端APP
- ntp協議及客戶端開發協議客戶端
- aix安裝oracle客戶端AIOracle客戶端
- Ceph的客戶端安裝客戶端
- Git-客戶端安裝Git客戶端
- centos安裝oracle客戶端CentOSOracle客戶端
- CentOS安裝git客戶端CentOSGit客戶端
- Kubernetes安裝之五:配置kubectl客戶端客戶端
- UBUNTU下L2TP客戶端安裝配置Ubuntu客戶端
- linux zabbix-6.0.1-Agent客戶端的安裝配置Linux客戶端
- Oracle Instant Client(即時客戶端) 安裝與配置Oracleclient客戶端
- Windows下安裝redis客戶端WindowsRedis客戶端
- db2 客戶端安裝DB2客戶端
- linux安裝mysql客戶端LinuxMySql客戶端
- zabbix監控客戶端安裝客戶端
- 安裝 Oracle 即時客戶端Oracle客戶端
- 免安裝Oracle客戶端使用Oracle客戶端
- Oracle 10g,PLSQL客戶端安裝與配置,解除安裝說明Oracle 10gSQL客戶端
- Windows下svn客戶端TortoiseSVN的安裝和操作Windows客戶端
- centos下安裝openvpn———客戶端CentOS客戶端
- kickstart之批量安裝puppet客戶端客戶端
- git SourceTree 客戶端 安裝/使用教程Git客戶端