Linux 系統時間和硬件時間

1、首先要弄清幾個概念:
1. 「系統時間」與「硬件時間」
系統時間: 通常說來就是咱們執行 date 命令看到的時間,linux系統下全部的時間調用(除了直接訪問硬件時間的命令)都是使用的這個時間。linux

硬件時間: 主板上BIOS中的時間,由主板電池供電來維持運行,系統開機時要讀取這個時間,並根據它來設定系統時間(注意:系統啓動時根據硬件時間設定系統時間的過程可能存在時區換算,這要視具體的系統及相關設置而定)。服務器

2、查看系統時間和硬件時間spa

1. 系統時間 date
直接調用 date,獲得的是本地時間。若是想獲得UTC時間的話,使用 date -u。code

2. 硬件時間 /sbin/hwclock
直接調用 /sbin/hwclock 顯示的時間就是 BIOS 中的時間嗎?未必!這要看 /etc/sysconfig/clock 中是否啓用了UTC,若是啓用了UTC(UTC=true),顯示的實際上是通過時區換算的時間而不是BIOS中真正的時間,若是加上 --localtime 選項,則獲得的老是 BIOS 中實際的時間.crontab

3、系統啓動和關閉時,硬件時間與系統時間之間的同步有兩種方式(假設在中國,用CST表明本地時間):同步

方式A: 使用UTC(對linux就是 /etc/sysconfig/clock 中 UTC=true)ast

開機: BIOS------->UTC(將BIOS中的時間當作是UTC)------(時區變化)----->CST
關機: CST -------(時區變化)----->UTC-------存儲到------>BIOSdate

方式B: 不使用UTC(對linux就是 /etc/sysconfig/clock 中 UTC=false)硬件

開機: BIOS--------------------->CST(將BIOS中的時間當作是CST)
關機: CST ---------存儲到------>BIOSim

4、系統時間和硬件時間的同步

同步系統時間和硬件時間,能夠使用hwclock命令。

//以系統時間爲基準,修改硬件時間

[root@localhost ~]# hwclock --systohc <== sys(系統時間)to(寫到)hc(Hard Clock)

[root@localhost ~]# hwclock -w

//以硬件時間爲基準,修改系統時間

[root@localhost ~]# hwclock --hctosys

[root@localhost ~]# hwclock -s

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

採用crontab和ntp結合進行時間同步

*/30 * * * * /usr/sbin/ntpdate puppetmaster.com.cn(時間服務器的主機名) >>/root/ntdate.log 2>&1 && /sbin/clock --systohc
相關文章
相關標籤/搜索