您好,登錄后才能下訂單哦!
小編給大家分享一下CentOS系統(tǒng)中與時(shí)間相關(guān)命令的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
時(shí)間在任何系統(tǒng)里都是最基本的部分,必不可少。本文介紹CentOS系統(tǒng)中與時(shí)間的相關(guān)命令。
基本概念
硬件時(shí)鐘(Hardware Clock)
硬件時(shí)鐘,也叫實(shí)時(shí)時(shí)鐘(RealTimeClock),或者BIOS時(shí)鐘,或者CMOS時(shí)鐘。它是位于機(jī)器主板上的實(shí)際硬件設(shè)備,一般靠電池維持運(yùn)行。所以,即使機(jī)器關(guān)機(jī),它也會(huì)一直保持記錄當(dāng)前時(shí)間,一般不是十分精確。
系統(tǒng)時(shí)間(System Time)
系統(tǒng)時(shí)間指的是操作系統(tǒng)中的時(shí)間。它是由系統(tǒng)加電后的硬件定時(shí)器驅(qū)動(dòng),Linux系統(tǒng)根據(jù)定時(shí)器信號(hào)來遞增時(shí)間計(jì)數(shù)。這個(gè)定時(shí)器非常準(zhǔn)確,誤差很小。
Linux系統(tǒng)啟動(dòng)時(shí),首先從硬件時(shí)鐘讀取當(dāng)前時(shí)間來初始化系統(tǒng)時(shí)間計(jì)數(shù),之后就會(huì)根據(jù)定時(shí)器中斷來遞增它,不再依賴于硬件時(shí)鐘。
時(shí)區(qū)(time zone)
世界各國日出的時(shí)間并不相同,而日出的時(shí)刻卻都被當(dāng)?shù)胤Q作6點(diǎn)鐘,同一時(shí)刻,各國的鐘表指針位置并不相同。也就造就了時(shí)區(qū)的出現(xiàn)。UTC是世界標(biāo)準(zhǔn)時(shí),其他時(shí)區(qū)都是在此基礎(chǔ)上增減。例如我國的北京時(shí)間就比世界時(shí)早8個(gè)小時(shí)。
硬件時(shí)鐘里一般不會(huì)記錄時(shí)區(qū)的信息,而往往只是當(dāng)?shù)貢r(shí)間。系統(tǒng)時(shí)間就必須要把時(shí)區(qū)的概念考慮進(jìn)去,否則不同時(shí)區(qū)的計(jì)算機(jī)進(jìn)行信息交流的時(shí)候,時(shí)間不能統(tǒng)一。這對于很多軟件系統(tǒng)是致命的,如嚴(yán)重依賴于時(shí)間標(biāo)簽的版本管理系統(tǒng)。Linux內(nèi)核中保存了當(dāng)前時(shí)區(qū)的信息,Linux的文件系統(tǒng)就依賴于這個(gè)時(shí)區(qū)信息。
常用命令
1 查看與設(shè)置當(dāng)前BIOS時(shí)間
[root@centos192 smstong]# hwclock -r # 讀取硬件時(shí)鐘 2015年06月03日 星期三 12時(shí)30分46秒 -0.891230 seconds [root@centos192 smstong]# hwclock --set --date="06/03/2015 16:45:05" # 設(shè)置硬件時(shí)鐘
2 查看與設(shè)置當(dāng)前操作系統(tǒng)時(shí)間
[root@centos192 smstong]# date # 查看當(dāng)前系統(tǒng)時(shí)間 2015年 06月 03日 星期三 19:37:55 CST [root@centos192 smstong]# date -s 10:00:00 # 設(shè)置系統(tǒng)時(shí)間 2015年 06月 03日 星期三 10:00:00 CST
3 硬件時(shí)鐘與系統(tǒng)時(shí)間交互
[root@centos192 smstong]# hwclock --hctosys # 用硬件時(shí)鐘設(shè)置系統(tǒng)時(shí)間 [root@centos192 smstong]# hwclock --systohc # 用系統(tǒng)時(shí)間設(shè)置硬件時(shí)鐘
4 查看與設(shè)置當(dāng)前系統(tǒng)的時(shí)區(qū)
[root@centos192 smstong]# date -R # 查看帶時(shí)區(qū)信息的當(dāng)前系統(tǒng)時(shí)間 Wed, 03 Jun 2015 19:45:37 +0800 [root@centos192 smstong]# export TZ='America/Havana' # 設(shè)置時(shí)區(qū)為古巴時(shí)間 [root@centos192 smstong]# date -R # 可以看到時(shí)區(qū)成了-0400 Wed, 03 Jun 2015 07:49:49 -0400
要想永久性的設(shè)置時(shí)區(qū)信息,則可以在 /etc/profile配置文件里增加 export TZ=’America/Havana’。這樣機(jī)器重啟后也會(huì)自動(dòng)設(shè)置時(shí)區(qū)。
注意Linux內(nèi)核和應(yīng)用程序使用的時(shí)區(qū)并不一定相同,雖然應(yīng)該相同。應(yīng)用程序首先靠TZ環(huán)境變量來確定時(shí)區(qū),如果TZ沒有設(shè)置,則使用內(nèi)核的設(shè)置。內(nèi)核是根據(jù)/etc/sysconfig/clock文件來設(shè)置時(shí)區(qū)的。* (這段是我的猜測,請大俠指正) *
5 通過網(wǎng)絡(luò)校時(shí) 前面我們說過硬件時(shí)鐘往往不太準(zhǔn)確,系統(tǒng)時(shí)鐘雖然比較準(zhǔn)確,但是仍不能滿足高精度的時(shí)間要求。最好的方式就是通過NTP協(xié)議從專門的時(shí)間服務(wù)器來讀取正確的時(shí)間,然后校正系統(tǒng)時(shí)間和硬件時(shí)鐘。
[root@centos192 smstong]# ntpdate -u s1a.time.edu.cn # 通過NTP校時(shí)修正系統(tǒng)時(shí)間 3 Jun 19:56:42 ntpdate[21550]: adjust time server 202.112.10.60 offset 0.000163 sec [root@centos192 smstong]# hwclock -w # 然后根據(jù)矯正過的系統(tǒng)時(shí)間設(shè)置硬件時(shí)鐘
如果是長時(shí)間運(yùn)行的服務(wù)器,則需要把校時(shí)命令寫成腳本,通過crond自動(dòng)定時(shí)執(zhí)行之。
以上是“CentOS系統(tǒng)中與時(shí)間相關(guān)命令的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。