最近在linux上因爲系統時間和硬件時間,出了不少問題,所以想詳細瞭解一下linux時間,希望能對和我有同樣問題的童鞋有所幫助.有問題,找"男人"!這是我剛接觸linux時,老師經常說的一句話。此"男人",非彼男人也,不過此"男人"和男人的功能一樣,都非常強大,嘿嘿。閒話少說,進入正題。
Linux時鐘分爲系統時鐘(System Clock)和硬件(Real Time Clock,簡稱RTC)時鐘。系統時鐘是指當前Linux Kernel中的時鐘,而硬件時鐘則是主板上由電池供電的時鐘,這個硬件時鐘可以在BIOS中進行設置。當Linux啓動時,硬件時鐘會去讀取系統時鐘的設置,然後系統時鐘就會獨立於硬件運作。Linux中的所有命令(包括函數)都是採用的系統時鐘設置。在Linux中,用於時鐘查看和設置的命令主要有date、hwclock。
我們先來用一下男人,man date,詳細內容如下:
一、date(日期)
NAME(名字)
date - print or set the system date and time
date - 打印或者設置系統日期和時間
SYNOPSIS(語法)
date [OPTION]... [+FORMAT]
date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
DESCRIPTION(描述):
Display the current time in the given FORMAT, or set the system date.#顯示當前你要求格式的時間或者設置系統日期
-f, --file=DATEFILE like --date once for each line of DATEFILE #和上面的--date類似,每一行來自DATEFILE。
-r, --reference=FILE display the last modification time of FILE #顯示最近修改時間的文件
-R, --rfc-2822 output date and time in RFC 2822 format. #輸出時間和日期爲RFC2822的格式,例如:Mon, 07 Aug 2006 12:34:56 -0600
--rfc-3339=TIMESPEC output date and time in RFC 3339 format. #輸出時間和日期爲RFC2822的格式,時間和日期是通過空格分開的:2006-08-07 12:34:56-06:00
-s, --set=STRING set time described by STRIN #設置STRING描述的時間
-u, --utc, --universal print or set Coordinated Universal Time #協調世界時(Coordinated Universal Time,縮寫爲UTC,並且因此它的拼寫經常寫爲Universal TimeCoordinated,有時也寫成Universal Coordinated Time)是世界各地通用標準時間。以前的現在仍然廣泛流行的是格林威治時間,也叫作世界時,諧調世界時名義上反映了隨着地球的基本子午線平均日光時間。
-help display this help and exit #顯示幫助並退出
-version output version information and exit #顯示版本信息並退出
二、hwclock
語法格式:
hwclock [--adjust][--debug][--hctosys][--show][--systohc][--test]
[--utc][--version][--set --date=<日期與時間>]
參數說明:
–adjust or -a
hwclock每次更改硬件時鐘時,都會記錄在/etc/adjtime文件中。使用adjust參數,可使hwclock根據先前的記錄來估算硬件時鐘的偏差,並用來校正目前的硬件時鐘。
–hctosys or -s
將系統時鐘調整爲與目前的硬件時鐘一致。
–set –date=<日期與時間>
設定硬件時鐘。
–show or -r
顯示硬件時鐘的時間與日期。
–systohc or -w
將硬件時鐘調整爲與目前的系統時鐘一致。
–version or -v
顯示版本信息。
–debug
顯示hwclock執行時詳細的信息。
–test
僅測試程序,而不會實際更改硬件時鐘。
–utc
若要使用格林威治時間,請加入此參數,hwclock會執行轉換的工作。
同步系統時鐘和硬件時鐘
# hwclock –w
設置硬件時鐘時間:
# hwclock --set --date="9/8/2007 16:45:05"
查看硬件時鐘
# hwclock -r