如何使用Chrony在Linux Server中同步時間

時間在 Linux服務器 特別是當它們用於銀行,股票市場和其他金融部門時。如果我們希望所有Linux服務器都具有正確的時間,則必須配置一些 NTP客戶端 它將始終從遠程NTP服務器獲取正確的時間,並根據需要進行必要的調整以同步時間。

在本文中,我們將演示如何使用Chrony(NTP客戶端)與Linux Server中的NTP服務器同步時間。

在CentOS / RHEL / Fedora系統上安裝Chrony

要在CentOS,RHEL和Fedora系統上安裝Chrony,請執行以下yum或dnf逗號

~]# yum install chrony -y
Or
~]# dnf install chrony -y

在Debian / Ubuntu系統上安裝Chrony

要在Debian和Ubuntu系統上安裝Chrony,請運行以下apt命令,

~]$ sudo apt install chrony -y

將chrony安裝在Linux服務器上後,它將提供兩個程序,

  • 時辰 :是chrony的命令行界面
  • 歷時 :這是chrony的守護程序,可在重新引導期間啟動並啟用chrony服務。

Chrony的配置文件

Chrony的配置文件是“/etc/chrony.conf”,下面列出了示例chrony.conf文件,

~]# cat  /etc/chrony.conf

如何使用Chrony在Linux Server中同步時間 2

其中:

  • 池0.europe.pool.ntp.org iburst是chrony將從中獲取時間的遠程NTP服務器。

  • 漂移文件/ var / lib / chrony / drift是包含漂移數據的漂移文件

  • makestep 1.0 3是一個參數,如果調整大於1秒(僅在前3個時鐘更新時),它將步進系統時鐘(加速或減速)

  • 密鑰文件/etc/chrony.keys作為名稱,建議此文件包含用於NTP身份驗證的密鑰。

  • logdir / var / log / chrony,它是記錄Chrony的日誌文件。

測試時間表

就像NTP分發中的ntpdate命令一樣,我們可以使用chronyd手動將Linux服務器的時間與遠程NTP服務器同步,

語法: #chronyd -q“服務器{ntp_server_name} iburst”

範例:

~]# chronyd -q 'server 0.europe.pool.ntp.org iburst'

如何使用Chrony在Linux Server中同步時間 3

從上面的輸出中可以看到,chrony已校正了系統時間,在運行chronyd命令之前,系統時間比準確時間晚了將近2個小時。

啟動和啟用Chronyd服務

運行以下命令以啟動並啟用chronyd守護程序,以便在重新啟動後將可用。

〜]#systemctl start chronyd

〜]#systemctl enable chronyd

運行下面的命令以驗證chronys服務狀態

~]# systemctl enable chronyd

如何使用Chrony在Linux Server中同步時間 4

驗證和跟蹤時間同步

要驗證您的系統時間是否已使用chrony同步,請發出以下命令,

[[email protected] ~]# chronyc tracking
Reference ID    : 904C13DD (its.no-fun.de)
Stratum         : 3
Ref time (UTC)  : Sun Jan 12 06:23:26 2020
System time     : 0.000174314 seconds slow of NTP time
Last offset     : -0.000199483 seconds
RMS offset      : 0.000199483 seconds
Frequency       : 0.301 ppm fast
Residual freq   : -40.403 ppm
Skew            : 0.541 ppm
Root delay      : 0.172664896 seconds
Root dispersion : 0.047364954 seconds
Update interval : 64.8 seconds
Leap status     : Normal
[[email protected] ~]#

其中:

  • 參考ID是系統時間當前同步到的服務器的ID和名稱。

  • 層,它表示帶有附加參考時鐘的離開服務器的跳數。

檢查時間來源

要列出有關chronyd使用的當前時間源的信息,請運行以下命令,

~]# chronyc sources

如何使用Chrony在Linux Server中同步時間 5

要列出有關源的更多詳細信息,請運行以下命令

~]# chronyc sources -v

檢查時間來源統計

要列出有關chronyd使用的每個源的漂移速度和偏移估計的信息,請運行以下命令

~]# chronyc sourcestats -v

如何使用Chrony在Linux Server中同步時間 6

配置Chrony NTP服務器

假設您要將Linux服務器配置為所有內部系統的Chrony NTP服務器。為此,我們需要取消注釋配置文件中的兩行/etc/chrony.conf

  • 本地階層10
  • 允許192.168.0.0/16

執行以下命令

~]# sed -i "s/#local stratum 10/local stratum 10/g" /etc/chrony.conf
~]# sed -i "s/#allow 192.168.0.0/16/allow 192.168.0.0/16/" /etc/chrony.conf

當我們取消注釋“本地層10”行時,則使我們的Linux服務器成為實時NTP服務器,即使它與網絡斷開連接也可以繼續正常工作。而“允許192.168.0.0/26”表示允許該網絡的客戶端進行以下操作:連接到我們的Chrony NTP服務器以進行時間同步。

進行更改後,重新啟動chrony服務並跟蹤chrony

~]# systemctl restart chronyd ; watch chronyc tracking

如何使用Chrony在Linux Server中同步時間 7

使用以下命令在防火牆中允許NTP服務,

~]# firewall-cmd --add-service=ntp –permanent
~]# firewall-cmd --reload

這就是本文的全部內容,希望您能了解如何使用chrony服務將Linux系統的時間與NTP服務器同步,除此之外,我們還了解了如何配置自己的Chrony NTP服務器。請分享您的寶貴反饋和評論。