linux中的系統時間與硬體時間是異步運作的,系統每次開機會讀取cmos裡的時間,然後加載到系統中單獨運作,生産中的伺服器一般是7*24運作,時間長了就可能會出現時間不一緻的現象,如果多台伺服器負載均衡,就會造成每台伺服器中日志檔案記錄時間也不一緻。
把硬體時間同步為系統時間:
hwclock --hctosys
把系統時間同步為硬體時間:
hwclock --systohc 等同于hwclock -w
更改UTC為CST時區
cp /usr/share/zoneinfo/posix/Asia/Shanghai /etc/localtime
注:
1、/usr/share/zoneinfo/posix/Asia/Shanghai這個為上海時區檔案(CST-8);/etc/localtime指定系統所使用的時區
2、修改BOIS時區
[root@centos-6 ~]# vim /etc/sysconfig/clock
ZONE="Asia/Shanghai"
注:如果沒有ntpdate工具,需安裝rpm包ntpdatentp
==================================================================================
附:
hwclock介紹
在Linux中有硬體時鐘與系統時鐘兩種時鐘。硬體時鐘是指主機闆上的時鐘裝置,也就是通常可在BIOS畫面設定的時鐘。系統時鐘則是指kernel中的 時鐘。當Linux啟動時,系統時鐘會去讀取硬體時鐘的設定,之後系統時鐘即獨立運作。所有Linux相關指令與函數都是讀取系統時鐘的設定。 hwclock實作了BIOS和linux的時間同步
文法格式:
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使用
同步系統時鐘和硬體時鐘
# hwclock –w
設定硬體時鐘時間:
# hwclock --set --date="9/8/2007 16:45:05"
檢視硬體時鐘
# hwclock -r