爲什麼需要通過設置NTP
對於BIOS的內部時間因爲BIOS內部晶片的關係,有可能會使硬件時間和標準時間(UTC)產生一定的差異。爲了避免時間差異問題,通過ntp校準硬件時間和標準時間
與時間以及ntp有關的幾個重要的文件:
/etc/ntp.conf :有關設置ntp配置的重要文件
/usr/share/zoneinfo/ :各個時區相對應的文檔
/etc/localtime:本地端的時間
關於ntp服務器的安裝和設定
1、檢查是否安裝ntp
Rpm -qa | grep ntp
如果沒有可以通過yum在線安裝
Yum install -y ntp
2、安裝完畢後根據需要修改配置文件
3、修改完配置文件之後重新啓動ntp服務
Service ntpd start(systemctl start ntpd)
4、用戶端時間的更新方式
4.1、對於設置好ntp軟件的主機,只要通過ntp進行網絡時間的校準和同步就行了,無需修改用戶端的時間,需要注意的是,當系統時間和標準時間同步了之後,需要同時將此時的系統時間寫入BIOS的硬件時間中,通過使用hwclock -rw命令顯示和將系統時間寫入硬件時間中。
4.2、對於沒有搭建的ntp軟件的主機來講,可以通過date命令設置系統時間,再通過hwlclock命令寫入硬件時間中
5.、網絡校時
在可利用ntp軟件的服務器中,也可以通過ntpdate這支程序進行時間的同步化,但是ntp服務預設的情況下,也會進行ntp服務器和上層ntp服務器的時間的同步化,所以ntpd和ntpdate不能同時啓用
[root@clientlinux ~]# ntpdate [-dv] [NTP IP/hostname]選項與參數: -d :進入除錯模式 (debug) ,可以顯示出更多的有效資訊。 -v :有較多訊息的顯示。
[root@clientlinux ~]# ntpdate 192.168.100.25428 Jul 17:19:33 ntpdate[3432]: step time server 192.168.100.254 offset -2428.396146 sec# 最後面會顯示微調的時間有多少 (offset), |
查看啓動服務的狀態
Service ntpd status(systemctl status ntpd)
查看ntpd是否開放了指定的端口(netstat -tulanp | grep ntpd)
Proto Recv-Q Send-Q Local Address Foreign Address PID/Program name
udp 0 0 192.168.100.254:123 0.0.0.0:* 3492/ntpd
udp 0 0 192.168.1.100:123 0.0.0.0:* 3492/ntpd
udp 0 0 127.0.0.1:123 0.0.0.0:* 3492/ntpd
udp 0 0 0.0.0.0:123 0.0.0.0:* 3492/ntpd
udp 0 0 ::1:123 :::* 3492/ntpd
udp 0 0 :::123 :::* 3492/ntpd
查看與上層ntp服務器連接情況
Ntpstat
synchronised to NTP server (220.130.158.71) at stratum 3
time correct to within 538 ms
polling server every 128 s
列出當前ntp與相關的上層ntp的狀態
ntpq -p:
remote:亦即是 NTP 主機的 IP 或主機名稱囉~注意最左邊的符號
o 如果有‘ * ’代表目前正在作用當中的上層 NTP
o 如果是‘ + ’代表也有連上線,而且可作爲下一個提供時間更新的候選者。
refid:參考的上一層 NTP 主機的位址
st:就是 stratum 階層囉!
when:幾秒鐘前曾經做過時間同步化更新的動作;
poll:下一次更新在幾秒鐘之後;
reach:已經向上層 NTP 伺服器要求更新的次數
delay:網路傳輸過程當中延遲的時間,單位爲 10^(-3) 秒
offset:時間補償的結果,單位與 10^(-3) 秒
jitter:Linux 系統時間與 BIOS 硬體時間的差異時間, 單位爲 10^(-3) 秒。
設置ntp服務器的注意事項:
1、保證ntp服務器與相關上層ntp服務器之間是否連接
2、端口123是否開放
3、防火牆規則是否設置無誤