Linux系統時鐘與同步

linux的系統時鐘在很多地方都要用到,要是不準,
就會出現一些奇怪的問題;

在Linux中,用於時鐘查看和設置的命令主要有date、hwclock和clock。
Linux時鐘分爲系統時鐘(System Clock)和硬件(Real Time Clock,簡稱RTC)時鐘。
系統時鐘: 是指當前Linux Kernel中的時鐘,
硬件時鐘: 是主板上由電池供電的時鐘,這個硬件時鐘可以在BIOS中進行設置。

當Linux啓動時,硬件時鐘會去讀取系統時鐘的設置,然後系統時鐘就會獨立於硬件運作。

Linux 中的所有命令(包括函數)都是採用的系統時鐘設置。
在Linux中,用於時鐘查看和設置的命令主要有date、hwclock和clock。
其中,clock和hwclock用法相近,只用一個就行,
只不過clock命令除了支持x86硬件體系外,還支持Alpha硬件體系。

1、 date
查看系統時間
# date

設置系統時間
# date –set “07/07/06 10:19″     //(月/日/年時:分:秒)

2、hwclock/clock
查看硬件時間
# hwclock –show  //或者
# clock –show

設置硬件時間
# hwclock –set –date=”07/07/06 10:19″ (月/日/年 時:分:秒)或者
# clock –set –date=”07/07/06 10:19″ (月/日/年 時:分:秒)


3、硬件時間和系統時間的同步
按照前面的說法,重新啓動系統,硬件時間會讀取系統時間,實現同步,
但是在不重新啓動的時候,需要用hwclock或clock命令實現同步。

硬件時鐘與系統時鐘同步:
# hwclock –hctosys   // (hc代表硬件時間,sys代表系統時間)或者
# clock –hctosys


系統時鐘和硬件時鐘同步:
# hwclock –systohc   // 或者
# clock –systohc


4. 和外部的NTP時間服務器同步
$ service ntpd stop
這一步是必須的,否則出出現:
25 Nov 18:10:34 ntpdate[2106]: the NTP socket is in use, exiting
的失敗提示;

$ ntpdate ntp.sjtu.edu.cn
正常返回如下:
25 Nov 18:14:34 ntpdate[2164]: adjust time server 202.120.2.101 offset -0.006107 sec
錯誤返回如:
25 Nov 18:13:44 ntpdate[2158]: no server suitable for synchronization found

$ service ntpd start
$ chkconfig ntpd on
$ clock -w

還可以寫進定時任務中,以做定時的時鐘同步:
$ crontab -e
05 * * * * /usr/sbin/ntpdate ntp.sjtu.edu.cn > /dev/null 2>&1
05 17 * * * /sbin/clock -w

附上中國大概能用的NTP時間服務器地址
  server 133.100.11.8 prefer
  server 210.72.145.44
  server 203.117.180.36
  server 131.107.1.10
  server time.asia.apple.com
  server 64.236.96.53
  server 130.149.17.21
  server 66.92.68.246
  server www.freebsd.org
  server 18.145.0.30
  server clock.via.net
  server 137.92.140.80
  server 133.100.9.2
  server 128.118.46.3
  server ntp.nasa.gov
  server 129.7.1.66
  server ntp-sop.inria.frserver 210.72.145.44(中國國家授時中心服務器IP地址)
  server ntp.sjtu.edu.cn(上海交通大學網絡中心NTP服務器地址)

轉:http://blog.chinaunix.net/uid-26000296-id-4009690.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章