linux修改時間

我們一般使用“date -s”命令來修改系統時間。比如將系統時間設定成1996年6月10日的命令如下。

#date -s 06/10/96
將系統時間設定成下午1點12分0秒的命令如下。
#date -s 13:12:00
同時修改日期和時間
#date -s "2010-07-28 16:54:00"
注意,這裏說的是系統時間,是linux由操作系統維護的。
在系統啓動時,Linux操作系統將時間從CMOS中讀到系統時間變量中,以後修改時間通過修改系統時間實現。爲了保持系統時間與CMOS時間的一致性, Linux每隔一段時間會將系統時間寫入CMOS。由於該同步是每隔一段時間(大約是11分鐘)進行的,在我們執行date -s後,如果馬上重起機器,修改時間就有可能沒有被寫入CMOS,這就是問題的原因。如果要確保修改生效可以執行如下命令。

#hwclock -w
這個命令強制把系統時間寫入CMOS

-------------------------------------------------------------------------------

  由於Linux時鐘和Windows時鐘從概念的分類、使用到設置都有很大的不同,所以,搞清楚Linux時鐘的工作方式與設置操作,不僅對於Linux初學者有着重大意義,而且對於使用Linux服務器的用戶來說尤爲重要。

  Linux時鐘的分類

  Windows 時鐘大家可能十分熟悉了,Linux時鐘在概念上類似Windows時鐘顯示當前系統時間,但在時鐘分類和設置上卻和Windows大相徑庭。和 Windows不同的是,Linux將時鐘分爲系統時鐘(System Clock)和硬件(Real Time Clock,簡稱RTC)時鐘兩種。系統時間是指當前Linux Kernel中的時鐘,而硬件時鐘則是主板上由電池供電的那個主板硬件時鐘,這個時鐘可以在BIOS的“Standard BIOS Feture”項中進行設置。

  既然Linux有兩個時鐘系統,那麼大家所使用的Linux默認使用哪種時鐘系統呢?會不回出現兩種系統時鐘衝突的情況呢?這些疑問和擔心不無道理。首先,Linux並沒有默認哪個時鐘系統。當Linux啓動時,硬件時鐘會去讀取系統時鐘的設置,然後系統時鐘就會獨立於硬件運作。

  從Linux啓動過程來看,系統時鐘和硬件時鐘不會發生衝突,但Linux中的所有命令 (包括函數)都是採用的系統時鐘設置。不僅如此,系統時鐘和硬件時鐘還可以採用異步方式,見圖1所示,即系統時間和硬件時間可以不同。這樣做的好處對於普通用戶意義不大,但對於Linux網絡管理員卻有很大的用處。例如,要將一個很大的網絡中(跨越若干時區)的服務器同步,假如位於美國紐約的Linux服務器和北京的Linux服務器,其中一臺服務器無須改變硬件時鐘而只需臨時設置一個系統時間,如要將北京服務器上的時間設置爲紐約時間,兩臺服務器完成文件的同步後,再與原來的時鐘同步一下即可。這樣系統和硬件時鐘就提供了更爲靈活的操作。

  設置Linux的時鐘

  在 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

  或者

  # clock --systohc

  使用圖形化系統設置工具設置時間

  對於初學者來,筆者推薦使用圖形化的時鐘設置工具,如Red Hat 8.0中的日期與時間設置工具,可以在虛擬終端中鍵“redhat-config-time”命令,或者選擇“K選單/系統設置/日期與時間”來啓動日期時間設置工具。使用該工具不必考慮系統時間和硬件時間,只需從該對話框中設置日期時間,可同時設置、修改系統時鐘和硬件時鐘。

  Internet同步時鐘設置

  在Windows XP日期與時間設置中有一項與Internet同步的功能,有了這項功能只要上網便可得到十分準確的時間。Red Hat 8.0也提供了這樣的功能,在日期與時間設置工具對話框中的下部,有一個“啓用網絡時間協議”的選項,將該項選中就可以使用網絡時間協議來同步Linux 系統時鐘。選中該項後,其下面的服務器下拉列表框就變爲可用狀態,可從中選擇一個時間服務器作爲遠程時間服務器。然後單擊確定按鈕,便可連接所設定的時間服務器,並與之同步時間。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章