Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
TP服務器
NTP服務器提供準確時間,首先要有準確的時間來源,這一時間應該是國際標準時間UTC。 NTP獲得UTC的時間來源可以是原子鐘、天文臺、衛星,也可以從Internet上獲取。這樣就有了準確而可靠的時間源。時間按NTP服務器的等級傳播。按照離外部UTC 源的遠近將所有服務器歸入不同的Stratum(層)中。Stratum-1在頂層,有外部UTC接入,而Stratum-2則從Stratum-1獲取時間,Stratum-3從Stratum-2獲取時間,以此類推,但Stratum層的總數限制在15以內。所有這些服務器在邏輯上形成階梯式的架構相互連接,而Stratum-1的時間服務器是整個系統的基礎。
計算機主機一般同多個時間服務器連接, 利用統計學的算法過濾來自不同服務器的時間,以選擇最佳的路徑和來源來校正主機時間。即使主機在長時間無法與某一時間服務器相聯系的情況下,NTP服務依然有效運轉。為防止對時間服務器的惡意破壞,NTP使用了識別(Authentication)機制,檢查來對時的信息是否是真正來自所宣稱的服務器并檢查資料的返回路徑,以提供對抗干擾的保護機制。
NTP校時方式
時間服務器可以利用以下三種方式與其他服務器對時:broadcast/multicast,client/server和Symmetric。
broadcast/multicast:方式主要適用于局域網的環境,時間服務器周期性的以廣播的方式,將時間信息傳送給其他網路中的時間服務器,其時間僅會有少許的延遲,而且配置非常的簡單。但是此方式的精確度并不高,對時間精確度要求不是很高的情況下可以采用。
Symmetric:的方式得一臺服務器可以從遠端時間服務器獲取時鐘,如果需要也可提供時間信息給遠端的時間服務器。此一方式適用于配置冗余的時間服務器,可以提供更高的精確度給主機。
client/server:方式與symmetric方式比較相似,只是不提供給其他時間服務器時間信息,此方式適用于一臺時間服務器接收上層時間服務器的時間信息,并提供時間信息給下層的用戶。
上述三種方式,時間信息的傳輸都使用UDP協議。時間服務器利用一個過濾演算法,及先前八個校時資料計算出時間參考值,判斷后續校時包的精確性,一個相對較高的離散程度,表示一個對時資料的可信度比較低。僅從一個時間服務器獲得校時信息,不能校正通訊過程所造成的時間偏差,而同時與許多時間服務器通信校時,就可利用過濾算法找出相對較可靠的時間來源,然后采用它的時間來校時
NTP服務器配置
NTP在Linux主機上默認一般都是安裝過的,只是服務沒有啟用。如果沒有安裝可直接使用yum install ntp命令即可。
NTP的主配置文件,以下是NTP服務器可選的指令:
# 允許172.16.*.*的IP使用該時間服務器; restrict 172.16.0.0 mask 255.255.0.0 nomodify #允許任何人來同步; restrict default nomodify notrap # 屏蔽其他IP過來更新時間; restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap noquery notrust #ignore:關閉所有的NTP聯機服務; #nomodify:表示Client端不能更改Server端的時間參數;不過Client端仍然可以透過Server端來進行網絡校時; #notrust:該Client除非通過認證否則該Client來源將被視為不信任網域; #noquery:不提供Client端的時間查詢; #notrap:允許任何人來查詢; # 同步的上層服務器(210.72.145.44國家時間服務器),NTP服務器默認也有同步的時間服務器; server 210.72.145.44 # 同步本地時間; server 127.127.1.0 prefer # 本地服務器的stratum大小不能超過16; fudge 127.127.1.0 stratum 8
啟動NTP服務器
[root@localhost ~]# chkconfig ntpd on [root@localhost ~]# service ntpd start
查看NTP信息
[root@localhost ~]# ntpq -p
NTP服務器配置完成啟動之后;NTP自身或者與其server的同步需要一個時間段這個過程可能是5-10分鐘;在這個時間段內客戶端運行ntpdate命令時會產生no serversuitable for synchronization found的錯誤,上圖表示210.72.145.44的reach為0不可用,LOCAL的reach為17可用。
將時間同步到硬件時鐘
[root@localhost ~]# vi /etc/sysconfig/ntpd SYNC_HWCLOCK=yes
客戶端配置
indows搭建ntp服務器
1、關閉防火墻;
2、服務:windows time服務打開,延時啟動;
3、cmd輸入“regedit”打開注冊表;
4、在注冊表中依次展開:HKEY_LOCAL_MACHINE->SYSTEM->CurrentControlSet->Services->W32Time->TimeProviders->NtpServer,
在NtpServer項的右側鍵值ENablied,將默認的0改為1,1為啟用NTP服務器;
5、再在注冊表中依次展開:HKEY_LOCAL_MACHINE->SYSTEM->CurrentControlSet->Services->W32Time->Config
找到Config項右側的AnnounceFlags。把默認的10改為5,5的意思就是自身為可靠的時間源。
6、在命令提示符中輸入:net restart w32Time,回車
要:本文將詳細介紹在Linux系統中安裝和配置NTP(網絡時間協議)服務的步驟和方法。NTP服務是用于同步計算機系統時間的重要工具,可以確保多臺計算機之間的時間一致性。我們將會介紹如何安裝NTP軟件包、配置NTP客戶端和服務器、選擇合適的時間服務器以及進行基本的時間同步測試。
網絡時間協議(NTP)是一種用于同步計算機系統時間的協議,它可以將計算機時鐘調整為幾乎與全球標準時間(UTC)一致。在Linux系統中,NTP服務可以通過安裝相應的軟件包來實現,本文將通過以下步驟詳細介紹如何在Linux系統中安裝和配置NTP服務。
1. 打開終端并以root用戶身份登錄。
2. 使用適應你的Linux發行版的包管理器,例如在Ubuntu上使用apt,CentOS上使用yum,來安裝NTP軟件包。執行以下命令:
Ubuntu:
```
sudo apt update
sudo apt install ntp
```
CentOS:
```
sudo yum update
sudo yum install ntp
```
1. 打開NTP配置文件ntp.conf,該文件位于/etc/ntp.conf。執行以下命令:
```
sudo nano /etc/ntp.conf
```
2. 在配置文件中,可以根據需要進行以下配置:
- server:指定時間服務器的地址,可以根據你所在地區選擇合適的時間服務器。例如,將server配置為:
```
server ntp.ubuntu.com
```
- restrict:限制NTP服務的訪問權限。默認情況下,只允許本地主機通過localhost訪問NTP服務,你可以根據需要進行修改。
- driftfile:指定NTP偏移量文件的位置。
3. 保存配置文件并退出。
1. 在NTP配置文件中,通常會提供一些默認的時間服務器。然而,你可以選擇從官方源列表中選擇一個可靠的時間服務器,以確保時間同步的準確性。
- 對于Ubuntu,你可以在/etc/ntp.conf文件中找到ntp.ubuntu.com服務器。如果你想添加其他服務器,可以使用以下命令:
```
sudo ntpq -p
```
- 對于CentOS,你可以在/etc/ntp.conf文件中找到0.centos.pool.ntp.org服務器。如果你想添加其他服務器,可以使用以下命令:
```
sudo ntpq -p
```
2. 使用NTP查詢命令(ntpq -p)來檢查所選時間服務器的響應時間和穩定性。確保選擇的服務器可靠并且相應時間較短。
1. 啟動NTP服務。執行以下命令:
Ubuntu:
```
sudo systemctl start ntp
```
CentOS:
```
sudo systemctl start ntpd
```
2. 檢查NTP服務的狀態。執行以下命令:
Ubuntu:
```
sudo systemctl status ntp
```
CentOS:
```
sudo systemctl status ntpd
```
如果服務正常運行,將顯示運行狀態和活動信息。
3. 執行時間同步命令以驗證NTP服務是否正常工作。執行以下命令:
```
sudo ntpq -p
```
該命令將顯示當前時間服務器和與之同步的信息。
六、總結
本文詳細介紹了在Linux系統中安裝和配置NTP服務的步驟和方法。通過正確安裝和配置NTP服務,你可以確保多臺計算機之間的時間一致性,提高系統穩定性和可靠性。務必選擇可靠的時間服務器,并定期檢查NTP服務的狀態和同步性能,以確保時間同步的準確性。
通過以上步驟,你可以輕松地在Linux系統中安裝和配置NTP服務,并享受準確和一致的系統時間帶來的好處。
歡迎加入我們的嵌入式學習群!作為這個群的一員,你將有機會與嵌入式系統領域的專業人士和愛好者們交流、分享經驗和學習資源。群內涵蓋了各種嵌入式系統的應用和開發,無論你是初學者還是經驗豐富的專業人士,都能在這里找到志同道合的伙伴和有益的互動。無論你是對物聯網、智能家居、工業自動化等領域感興趣,還是希望分享你自己的項目和經驗,我們的群都會為你提供一個廣闊的交流平臺。
更多學習資源在這里:掃碼進群領資料
參考文獻:
- Ubuntu NTP Documentation: https://help.ubuntu.com/lts/serverguide/NTP.html
- CentOS NTP Documentation: https://wiki.centos.org/zh/HowTos/ntp
*請認真填寫需求信息,我們會在24小時內與您取得聯系。