Linux下時鐘時區以及時間同步的命令和配置

文章轉自Live空間(http://delxu.spaces.live.com/blog/cns!D04F87F9ED029F69!2583.entry)和51cto技術博客(http://delxu.blog.51cto.com)首發。轉發時務必表明出處,順便給博主做個廣告,文章寫的真的很好,深入淺出,期待看到更好的博文,再次表示對博主的感謝!!!
Linux下時鐘時區以及時間同步的命令和配置

第一部分:設置時間

我們一般使用“date -s”命令來修改系統時間 (這裏說的是系統時間,是linux由操作系統維護的。)。比如將系統時間設定成1996年6月10日的命令如下。
#date -s 06/10/96

將系統時間設定成下午1點12分0秒的命令如下。
#date -s 13:12:00

將日期時間設置成1996年6月10日下午1點12分0秒可以用
#date -s "06/10/1996 13:12:00"

這裏的格式是 "MM/DD/YYYY hh:mm:ss"

或者
#date 061013121996.00
這裏的格式是MMDDhhmmYYYY.ss (月日時分年.秒)

在系統啓動時,Linux操作系統將時間從CMOS中讀到系統時間變量中,以後修改時間通過修改系統時間實現。爲了保持系統時間與CMOS時間的一致性, Linux每隔一段時間會將系統時間寫入CMOS。由於該同步是每隔一段時間(大約是11分鐘)進行的,在我們執行date -s後,如果馬上重起機器,修改時間就有可能沒有被寫入CMOS,這就是問題的原因。如果要確保修改生效可以執行如下命令。

#hwclock -w
這個命令強制把系統時間寫入CMOS,(等同於hwclock --systohc)

================

  Linux將時鐘分爲系統時鐘(System Clock)和硬件(Real Time Clock,簡稱RTC)時鐘兩種。系統時間是指當前Linux Kernel中的時鐘,而硬件時鐘則是主板上由電池供電的那個主板硬件時鐘,這個時鐘可以在BIOS的Standard BIOS Feture”項中進行設置。

  在 Linux中,用於時鐘查看和設置的命令主要有date、hwclock和clock。其中,clock和hwclock用法相近,只不過clock命令除了支持x86硬件體系外,還支持Alpha硬件體系。由於目前絕大多數用戶使用x86硬件體系,所以可以視這兩個命令爲一個命令來學習。

  1.在虛擬終端中使用date命令來查看和設置系統時間

  查看系統時鐘的操作:
  #date

  設置系統時鐘的操作:
  #date 091713272003.30

  通用的設置格式:
  #date 月日時分年.秒

  2.使用hwclock或clock命令查看和設置硬件時鐘
     查看硬件時鐘
  #hwclock --show
    或
  #clock –show
  2003年09月17日 星期三 13時24分11秒 -0.482735 seconds

  設置硬件時鐘的操作:
  # hwclock --set --date="09/17/2003 13:26:00"
  或者
  # clock --set --date="09/17/2003 13:26:00"

  通用的設置格式:hwclock/clock --set --date=“月/日/年 時:分:秒”。

  3.同步系統時鐘和硬件時鐘
  Linux系統(筆者使用的是Red Hat 8.0,其它系統沒有做過實驗)默認重啓後,硬件時鐘和系統時鐘同步。如果不大方便重新啓動的話(服務器通常很少重啓),使用clock或hwclock命令來同步系統時鐘和硬件時鐘。

  硬件時鐘同步系統時鐘
  # hwclock --hctosys
  或者
  # clock –hctosys

  上面命令中,--hctosys表示Hardware Clock to SYStem clock。

  系統時鐘同步硬件時鐘

  # hwclock --systohc
  或者
  # hwclock -w
  或者
  # clock –systohc

輸入#hwclock --help查看所有參數和格式

第二部分:設置時區

配置文檔/etc/sysconfig/clock
#
ZONE="Asia/Shanghai"
UTC=false
ARC=false
~

具體看以下文檔:
http://delxu.spaces.live.com/Blog/cns!D04F87F9ED029F69!409.entry

第三部分:設置時鐘同步-- NTP

1) Linux (以RedHat Linux爲例)
配置NTP配置文件 /etc/ntp.conf
添加如下內容
# --- OUR TIMESERVERS -----
server 10.86.2.9 prefer
server 10.56.254.131
server 2.pool.ntp.org

然後重啓NTPD
# /sbin/service ntpd restart

參考文檔

1)JeamiZhang的這篇文檔介紹了Windows/Linux/HP-UX/Cisco路由器等多種設備的時鐘同步命令用法,很有參考價值:
http://hi.baidu.com/seipher/blog/item/1a06aed324316337970a162e.html
2)lnote的這篇具體講了Linux下時鐘的命令,本篇前半部分引用之
http://lnote.blogbus.com/logs/8248403.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章