Linux 時間同步配置

us_yunleiwang發表於2013-12-05

使用ntpdate 命令

1.1 伺服器可連結外網時    

# crontab -e    

加入一行:    

*/1 * * * * ntpdate 210.72.145.44     

210.72.145.44 為中國國家授時中心伺服器地址,這樣該機每隔1分重就可以與國家授時中心進行同步了。    

注意: 在使用ntpdate 命令時, ntpd 服務必須是關閉的, 否則會報the NTP socket is in use, exiting 錯誤。

關閉 ntpd 服務命令如下:

[root@node2 init.d]# /etc/init.d/ntpd stop

Shutting down ntpd:                                        [  OK  ]

1.2. 架設本地時間伺服器

需要修改 /etc/ntp.conf檔案裡的幾個配置就可以了,比如本地時間伺服器IP 為 10.85.10.119, 配置如下:

server 210.72.145.44 prefer (中國國家授時中心伺服器地址 prefer表示優先 注意把預設的server更改成這樣)    

server 127.127.1.0 (本地時間)    

restrict 10.85.10.0 mask 255.255.255.0 nomodify (允許10..85.10.* IP 使用該時間伺服器)    

restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap noquery notrust (遮蔽其他IP過來更新時間)    

其他的保持預設不動。   

 

使NTP服務可以在系統引導的時候自動啟動,執行:     

# chkconfig ntpd on    

啟動/關閉/重啟NTP的命令:    

# /etc/init.d/ntpd start    

# /etc/init.d/ntpd stop    

# /etc/init.d/ntpd restart    

#service ntpd restart

將同步好的時間寫到CMOS裡    

vi /etc/sysconfig/ntpd    

SYNC_HWCLOCK=yes    

  

每次修改了配置檔案後都需要重新啟動服務來使配置生效。

可以使用下面的命令來檢查NTP服務是否啟動,你應該可以得到一個程式ID號:    

# pgrep ntpd    

使用下面的命令檢查時間伺服器同步的狀態:    

# ntpq -p    

用ntpstat 也可以檢視一些同步狀態,用netstat -ntlup檢視埠使用情況!  

  

安裝完畢客戶端需過5-10分鐘才能從伺服器端更新時間!   

 

客戶端設定:    

# crontab -e    

加入一行:    

*/1 * * * * ntpdate 10.85.10.119。   

相關配置引數說明
#  restrict許可權控制語法為:
#  restrict IP mask netmask_IP parameter
#  其中 IP 可以是軟體地址,也可以是 default default 就類似 0.0.0.0 咯!
#  至於 paramter 則有:
#   ignore :關閉所有的 NTP 聯機服務
#   nomodify:表示 Client 端不能更改 Server 端的時間引數,不過,
#        Client 端仍然可以透過 Server 端來進行網路校時。
#   notrust :該 Client 除非透過認證,否則該 Client 來源將被視為不信任網域
#   noquery :不提供 Client 端的時間查詢
#  如果 paramter 完全沒有設定,那就表示該 IP (或網域『沒有任何限制!』

 設定上層主機主要以 server這個引數來設定,語法為:
#  server [IP|FQDN] [prefer]
#  Server 後面接的就是我們上層 Time Server 囉!而如果 Server 引數
#  後面加上 perfer 的話,那表示我們的 NTP 主機主要以該部主機來作為
#  時間校正的對應。另外,為了解決更新時間封包的傳送延遲動作,


二、使用rdate同步時間
如果要用vmware安裝RAC,則各個幾點間時間必須一致,可以以一個節點作為標準,其他節點與該節點進行時間同步。
假如有兩個節點:
A: 10.85.10.119
B: 10.85.10.121

以A作為時間標準,B節點用A節點時間進行同步。
1、在A節點開放37
最簡單,但也最不安全的方法是關閉防火牆:iptables -F

2. A節點啟動時間服務
#chkconfig time on     #在系統引導的時候自動啟動


如果不啟動該服務,則其他節點與該節點同步時間時會報錯:Connect Refused

注意:要用root 使用者

3、在B節點與A節點同步時間
rdate -s 10.85.10.119  

可以在crontab 中做執行計劃, 每分鐘執行一次,這樣保證時間的同步。

[root@node2 ~]# crontab -l

*/1 * * * * rdate -s 10.85.10.119

[root@node2 ~]#

關於crontab 的介紹參考blog

Unix crontab 命令詳解

http://blog.csdn.net/tianlesoftware/archive/2010/02/21/5315039.aspx

 

三. 使用 Network Time Protocol (NTP) 伺服器

1. 假如公司網路裡有一個時間伺服器: 10.85.10.80, 此時只需要在每個結點上修改NTP 服務配置檔案,讓每個結點和時間伺服器進行同步即可。 

# vi /etc/ntp.conf

Server 10.85.10.80 prefer

Driftfile /var/lib/ntp/drift

Broadcastdelay 0.008

修改完後在重啟一下 ntp 服務

#/etc/init.d/ntpd restart

2. 如果沒有時間服務,則可以用RAC 2個結點中一個做為伺服器。另一個與此伺服器同步即可。 

加入用node1 做伺服器, 其IP 為: 10.85.10.119, 修改配置檔案

#vi /etc/ntp.conf

Server 127.127.1.0  -- 本地時鐘

Fudge 127.127.1.0 stratum 11

Broadcastdelay 0.008

Node2 與node1 同步。 


修改node2ntp 配置檔案

# vi /etc/ntp.conf

Server 10.85.10.119 prefer

Driftfile /var/lib/ntp/drift

Broadcastdelay 0.008

修改完後在重啟一下 ntp 服務

#/etc/init.d/ntpd restart



或者在node2是使用crontab 與伺服器同步時間

*/15 * * * * ntpdate 10.85.10.119 

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23490154/viewspace-1062328/,如需轉載,請註明出處,否則將追究法律責任。

相關文章