1. 程式人生 > >國外linux伺服器同步北京時間

國外linux伺服器同步北京時間

公司伺服器宕機重啟後又要重新同步北京時間,但過程中遇到了一點不一樣的問題,在此記錄下。

首先由於伺服器預設是美國時間,所以先更改時區:
將 /usr/share/zoneinfo目錄下的上海時間覆蓋/etc/localtime目錄下預設的美國西部時間,然後輸入命令可以看到時區已經改成東八區了

[[email protected] ~]# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
cp: overwrite `/etc/localtime'? y
[[email protected] ~]# date
Fri Sep 28 19:07:25 CST 2018
[
[email protected]
~]# date -R; date +%z Fri, 28 Sep 2018 19:08:07 +0800 +0800

但在時間上還存在幾小時的差距,因此用ntp服務同步北京時間,試了兩個地址

[[email protected] ~]# ntpdate -u 202.120.2.101
28 Sep 19:14:09 ntpdate[2831]: no server suitable for synchronization found
[[email protected] ~]# ntpdate cn.pool.ntp.org
Exiting, name server cannot be used: Temporary failure in name resolution (-3)28 Sep 19:41:15 ntpdate[3226]: name server cannot be used: Temporary failure in name resolution (-3)

都報錯提示。
剛開始不知咋回事,然後想著用rdate命令也行,所以輸入

[[email protected] ~]# rdate -s time-b.nist.gov
rdate: timeout for time-b.nist.gov

同樣出現報錯,而且時間也沒同步成功。
然後開始百度,原因五花白門,各有各的,費盡功夫找到一位貌似問題相同的,根據錯誤資訊Exiting, name server cannot be used: Temporary failure in name resolution (-3)28 Sep 19:41:15 ntpdate[3226]: name server cannot be used: Temporary failure in name resolution (-3) ,提示是你沒有名字解析,你需要配置dns伺服器地址(dns伺服器上必須要有對應的條目),或者你可以使用IP地址來直接進行連線。

所以先ping下百度,發現報 unknown host www.baidu.com錯誤,但能ping通8.8.8.8的谷歌DNS伺服器,檢視
DNS客戶機配置檔案,發現伺服器為127.0.0.1,意即本機,因此才解析不對。

[[email protected] ~]#  ping www.baidu.com
ping: unknown host www.baidu.com
[[email protected] ~]# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=123 time=1.42 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=123 time=1.24 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=123 time=1.24 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=123 time=1.23 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=123 time=1.23 ms
64 bytes from 8.8.8.8: icmp_seq=6 ttl=123 time=1.24 ms
64 bytes from 8.8.8.8: icmp_seq=7 ttl=123 time=1.23 ms

[[email protected] ~]# cat /etc/resolv.conf 
# Generated by NetworkManager
search com
nameserver 127.0.0.1

然後編輯/etc/resolv.conf 檔案更改nameserver為Google公共的DNS伺服器8.8.8.8

[[email protected] ~]#  vi /etc/resolv.conf
[[email protected] ~]#  cat /etc/resolv.conf
# Generated by NetworkManager
search com
nameserver 8.8.8.8

重新ping百度發現能ping通了,證明dns伺服器地址配置正確了,最後輸入命令成功同步到北京時間,大功告成!

[[email protected] ~]#  /usr/sbin/ntpdate  time.stdtime.gov.tw
29 Sep 10:44:10 ntpdate[3236]: step time server 118.163.81.61 offset 53988.771688 sec
[[email protected] ~]# date
Sat Sep 29 10:44:25 CST 2018