成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Linux 上怎么配置 Ntp 時間同步

系統 Linux
NTP 是 Network Time Protocol 的縮寫,也即 網絡時間協議,一種在 Linux 上保持準確時間的協議,它和網絡上可用的 NTP 服務器保持著時鐘同步。

NTP 是 Network Time Protocol 的縮寫,也即 網絡時間協議,一種在 Linux 上保持準確時間的協議,它和網絡上可用的 NTP 服務器保持著時鐘同步

在 Linux 中,保持準確的日期和時間至關重要,因為許多服務(如 cron 作業和腳本)依賴于準確的時間才能得到預期的結果

用于同步日期和時間的 ntpd 服務,在新的Linux發行版 ( centos8、Ubuntu 20.04、Fedora 30 ) 中已經廢棄了,取而代之的是 chrony

當然,選擇 chrony 是有原因的,相比 ntpd , 它有如下的優點:

1、時間同步的速度比 ntpd 更快

2、chrony 很好的處理了同步延遲以及網絡延遲

3、即使出現網絡降級,chrony 仍然能正常工作

4、本地機器可以作為時間服務器,其他機器從這臺服務器上同步時間

安裝

在新的 Linux 發行版(centos8、Ubuntu 20.04、Fedora 30)及以后的版本中,系統默認已經安裝了 chrony,在這之前的版本是沒有安裝的,可以使用下面的命令進行安裝

yum install chrony

安裝完成后,chrony 服務默認會自動加到 systemctl 中管理,下面列出了一些常用的命令

#查詢 chronyd 服務狀態
systemctl status chronyd

#啟動 chronyd 服務
systemctl start chronyd

#關閉 chronyd 服務
systemctl stop chronyd

#重啟 chronyd 服務
systemctl restart chronyd

#設置 chronyd 服務開機自啟
systemctl enable chronyd
systemctl daemon-reload

另外,啟動 chronyd 服務的時候如果出現下面截圖中的錯誤,需要安裝或者升級 libsepol、policycoreutils-python

具體的問題說明詳見 https://bugzilla.redhat.com/show_bug.cgi?id=1592775

# 安裝 libsepol 和 policycoreutils-python
yum install libsepol policycoreutils-python

chrony 的組成

chrony 是由 守護進程 chronyd 以及 命令行工具 chronyc 組成的,具體如下圖

chronyd 在后臺靜默運行并通過 123 端口與時間服務器定時同步時間,默認的配置文件是 /etc/chrony.conf

chronyc 通過 323 端口與 chronyd 交互,可監控 chronyd 的性能并在運行時更改各種操作參數

chronyc 通過下面的方式訪問 chronyd

通過 IPv4 或 IPv6 訪問

2、通過 Unix 域 socket, 但只能訪問到本地的 chronyd,而且需要 root 用戶或者 chrony 用戶才能訪問

默認情況下,chronyc 先通過 Unix 域 socket 訪問 chronyd,默認的 socket 文件是 /var/run/chrony/chronyd.sock, 如果失敗(常見的原因是使用非 root 用戶運行 chronyc ),將嘗試通過 127.0.0.1 訪問 chronyd

chrony 配置

守護進程 chronyd 的默認配置文件是 /etc/chrony.conf,其中可配置項很多,這里介紹一些常用的

配置項

說明

server

客戶端需找哪個服務器詢問當前時間

pool

同 server 配置項

driftfile

本地時鐘和服務器時鐘的預估漂移保存到哪個文件中

makestep

糾正客戶端時間的步進參數

rtcsync

是否允許內核同步實時時鐘

allow

允許客戶端通過內網地址同步時鐘

logdir

日志目錄

配置時間同步

守護進程 chronyd 既可作為客戶端 與 服務器同步時間,又可作為一個服務器,接受其他客戶端同步時間的請求

下面以配置局域網時間服務器為例來說明 chronyd 的客戶端和服務器的配置,相關的參數如下:

客戶端IP: 192.168.70.22服務器IP: 192.168.70.21

下面是具體的配置步驟

1. 安裝客戶端服務器

分別在客戶端機器和服務器機器安裝 chrony,安裝方法前面有講述,這里不贅述了

2. 編輯 /etc/chrony.conf

安裝好 chrony 之后,編輯 /etc/chrony.conf 配置文

客戶端配置

# 同步時間的服務器 IP 或 域名
server 192.168.70.21 iburst

# 系統時鐘的預估漂移保存到指定的文件中,是為了在下次啟動時能穩定的同步
driftfile /var/lib/chrony/drift

# 如果系統時鐘由于某種原因與啟動后的服務器時間相差甚遠,允許 chronyd
# 通過步進而不是回轉來快速糾正它
makestep 1 3

# 為了使客戶端實時時鐘接近服務器的時鐘,以便下次時鐘啟動時更接近真實的時間
# 增加了一種 rtcsync 模式,該模式下,系統時間會定期的拷貝到實時時鐘里
rtcsync

# 日志
logdir /var/log/chrony

服務器配置

安裝 chrony 之后,默認的配置是客戶端的啟動配置的,要想作為一個時間服務器來運行的話, 需要在配置中增加 allow 配置項,它表示允許客戶端通過該地址和服務器同步時間

另外,時間服務器的時間也需要從網絡上其他的時間服務器進行同步,這里直接用默認的即可,具體的配置如下

# 同步時間的服務器 IP 或 域名
pool 0.centos.pool.ntp.org iburst
pool 1.centos.pool.ntp.org iburst
pool 2.centos.pool.ntp.org iburst
pool 3.centos.pool.ntp.org iburst

# 為了在下次啟動時穩定的同步,系統時鐘的預估漂移需要保存到指定的文件中
driftfile /var/lib/chrony/drift

# 如果系統時鐘由于某種原因與啟動后的服務器時間相差甚遠,允許 chronyd
# 通過步進而不是回轉來快速糾正它,這個過程將花費很長時間
makestep 1 3

# 為了使客戶端實時時鐘接近服務器的時鐘,以便下次時鐘啟動時更接近真實的時間
# 增加了一種 rtcsync 模式,該模式下,系統時間會定期的拷貝到實時時鐘里
rtcsync

# 允許客戶端通過該地址和服務器同步時間,其實這里配置的就是時間服務器的地址
allow 192.168.70.21
pool 配置項

客戶端需要去時間服務器獲取時間,配置文件中 server 和 pool 配置項表示時間服務器的地址,支持域名或者IP

建議配置多個時間服務器的地址,優先選擇同步良好,網絡穩定且靠近客戶端的地址

pool 與 allow 的區別

pool指的是進行時間同步的服務器IP地址或域名,作為服務器來說,其機器時間也需要從其他時間服務器同步,此時,服務器是作為一個客戶端從網絡服務器上獲取時間

而 allow 字段表示的是作為服務器,允許客戶端從該地址獲取時間,此地址其實就是服務器的內網地址

3. 處理防火墻

時間服務器如果有開啟防火墻的話,需要開啟 UDP 協議 的 123 端口,以允許客戶端向服務器發送獲取時間的請求

[root@cghost22 ~]# firewall-cmd --permanent --add-port=123/udp
success
[root@cghost22 ~]# firewall-cmd --reload
success

如果想要關閉防火墻的 123 端口,在服務器機器上執行下面的命令

[root@cghost22 ~]# firewall-cmd --permanent --remove-port=123/udp
success
[root@cghost22 ~]# firewall-cmd --reload
success

4. 重啟 chrony

配置好客戶端和服務器之后,為使配置生效,需要重啟 chronyd 服務

 systemctl restart chronyd   

5. 查詢信息

在服務器端輸入 chronyc clients 命令查看同步的客戶端信息

在客戶端輸入 chronyc sources 命令查查看時間服務器的信息

問題

在配置時間服務器的過程中,可能遇到各種問題,下面記錄了一些常見的問題以及解決思路

客戶端無法進行時間同步

第一個想到的應該是 服務器之上存在防火墻,這時客戶端向服務器請求時間不會有任何的響應,在客戶端機器輸入 chronyc sources 命令可以看到 Reach 字段的值為 0 ,表示客戶端無法收到服務器的響應了,具體請看下圖

如果排除了防火墻的問題的話,可能需要使用一些工具(tcpdump、wireshark)檢查下客戶端是否有收到服務器的數據包

客戶端和服務器時間差得太多,如何快速修正

通常 chrony 會逐步的修正和服務器之間的時間差,根據需要加快或者減慢時鐘,如果客戶端和服務器時間差得太多了的話,這個過程會持續很長時間

這種情況可以使用 chronyc makestep 命令快速修復客戶端時間,makestep 后面不帶任何參數時,表示 chronyd 取消正在修正時間的動作,將當前客戶端時間直接修改成服務器的時間

不過,需要注意的是,這種方法直接越過了一段系統時間,有可能會對應用程序造成嚴重的問題,所以,推薦按照 chronyd 逐步修正的方式來同步時間

小結

本文介紹了 Linux 中,時間同步的配置方法,提供常見的問題的解決思路或者方案,更多關于 chrony 的介紹請參考下方的網站

https://chrony.tuxfamily.org/documentation.html


責任編輯:武曉燕 來源: Linux開發那些事
相關推薦

2010-08-06 14:46:51

思科路由器NTP服務器配置

2018-03-19 19:00:54

2010-09-02 10:50:17

時間同步服務器

2010-08-20 10:29:40

NTP

2019-06-10 15:50:54

LinuxNTP命令

2017-01-09 09:20:07

Ubuntu NTP同步

2024-05-27 08:25:05

2024-10-12 17:23:30

2025-01-08 09:31:50

2019-05-05 10:42:22

LinuxNTP命令

2019-08-13 16:10:38

UbuntuLinux時間同步

2010-03-03 14:25:37

Linux NTP

2009-02-13 11:06:00

時間同步服務器服務器

2015-05-25 09:13:31

NTP網絡時間協議NTP服務器

2017-11-20 09:00:34

Linux服務器時間同步

2022-04-30 09:41:14

LinuxNTP服務器

2017-12-04 11:19:01

Linux運維同步網絡時間

2012-05-17 08:43:26

Windows 7Linux

2023-03-17 08:50:00

服務器時鐘服務數據庫

2009-12-11 09:52:51

Linux系統
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线免费观看黄a | 亚洲a一区 | 亚洲天堂久久 | 亚洲国产精品一区二区第一页 | 欧美久久久久久久久 | 久久久久久91 | 欧美性猛片aaaaaaa做受 | 成人片免费看 | 成人欧美一区二区三区白人 | 懂色tv | 黄在线 | 日本黄色高清视频 | 少妇精品久久久久久久久久 | 全部免费毛片在线播放网站 | 久久久免费少妇高潮毛片 | 亚洲永久入口 | 国产精品美女久久久久久久久久久 | 久久在线视频 | 亚洲综合第一页 | 亚洲福利视频一区二区 | 亚洲精品电影网在线观看 | 99小视频| 天天干天天色 | 91免费视频观看 | 国产精品久久久久久久一区探花 | 久久亚洲精品国产精品紫薇 | 欧美日韩一区二区在线 | 欧洲妇女成人淫片aaa视频 | 日韩av一区二区在线观看 | 四虎影音 | 日韩一区精品 | 午夜免费视频 | 国产一二三区在线 | 亚洲精品国产第一综合99久久 | 亚洲第一网站 | 草在线| 99久久久久久99国产精品免 | 国产一区在线免费 | 成人国产在线视频 | 久久精品色欧美aⅴ一区二区 | 国产一级电影在线 |