以前一直用date設(shè)置,這次參考網(wǎng)上資料,終于整了個全的。
Linux時鐘分為系統(tǒng)時鐘(System Clock)和硬件(Real Time Clock,簡稱RTC)時鐘。系統(tǒng)時鐘是指當(dāng)前Linux Kernel中的時鐘,而硬件時鐘則是主板上由電池供電的時鐘,這個硬件時鐘可以在BIOS中進行設(shè)置。當(dāng)Linux啟動時,硬件時鐘會去讀取系統(tǒng)時鐘的設(shè)置,然后系統(tǒng)時鐘就會獨立于硬件運作。
Linux中的所有命令 (包括函數(shù))都是采用的系統(tǒng)時鐘設(shè)置。在Linux中,用于時鐘查看和設(shè)置的命令主要有date、hwclock和clock。其中,clock和hwclock用法相近,只不過clock命令除了支持x86硬件體系外,還支持Alpha硬件體系。
1、date
查看系統(tǒng)時間
# date
設(shè)置系統(tǒng)時間
# date --set “07/07/06 10:19" (月/日/年 時:分:秒)
2、hwclock/clock
查看硬件時間
# hwclock --show
# clock --show
設(shè)置硬件時間
# hwclock --set --date="07/07/06 10:19" (月/日/年 時:分:秒)
# clock --set --date="07/07/06 10:19" (月/日/年 時:分:秒)
3、硬件時間和系統(tǒng)時間的同步
按照前面的說法,重新啟動系統(tǒng),硬件時間會讀取系統(tǒng)時間,實現(xiàn)同步,但是在不重新啟動的時候,需要用hwclock或clock命令實現(xiàn)同步。
硬件時鐘與系統(tǒng)時鐘同步:
# hwclock --hctosys(hc代表硬件時間,sys代表系統(tǒng)時間)
或者
# clock --hctosys
系統(tǒng)時鐘和硬件時鐘同步:
# hwclock --systohc
或者
# clock --systohc
4、時區(qū)的設(shè)置
# tzselect
Please identify a location so that time zone rules can be set correctly.
Please select a continent or ocean.
1) Africa
2) Americas
3) Antarctica
4) Arctic Ocean
5) Asia
6) Atlantic Ocean
7) Australia
8) Europe
9) Indian Ocean
10) Pacific Ocean
11) none - I want to specify the time zone using the Posix TZ format.
#? 輸入5,亞洲
Please select a country.
1) Afghanistan 18) Israel 35) Palestine
2) Armenia 19) Japan 36) Philippines
3) Azerbaijan 20) Jordan 37) Qatar
4) Bahrain 21) Kazakhstan 38) Russia
5) Bangladesh 22) Korea (North) 39) Saudi Arabia
6) Bhutan 23) Korea (South) 40) Singapore
7) Brunei 24) Kuwait 41) Sri Lanka
8) Cambodia 25) Kyrgyzstan 42) Syria
9) China 26) Laos 43) Taiwan
10) Cyprus 27) Lebanon 44) Tajikistan
11) East Timor 28) Macau 45) Thailand
12) Georgia 29) Malaysia 46) Turkmenistan
13) Hong Kong 30) Mongolia 47) United Arab Emirates
14) India 31) Myanmar (Burma) 48) Uzbekistan
15) Indonesia 32) Nepal 49) Vietnam
16) Iran 33) Oman 50) Yemen
17) Iraq 34) Pakistan
#? 輸入9,中國
Please select one of the following time zone regions.
1) east China - Beijing, Guangdong, Shanghai, etc.
2) Heilongjiang
3) central China - Gansu, Guizhou, Sichuan, Yunnan, etc.
4) Tibet most of Xinjiang Uyghur
5) southwest Xinjiang Uyghur
#? 輸入1,北京時間
The following information has been given:
China
east China - Beijing, Guangdong, Shanghai, etc.
Therefore TZ='Asia/Shanghai' will be used.
Local time is now: Fri Jul 7 10:32:18 CST 2006.
Universal Time is now: Fri Jul 7 02:32:18 UTC 2006.
Is the above information OK?
1) Yes
2) No
#? 輸入1,確認(rèn)
如果不用tzselect命令,可以修改文件變更時區(qū)。
# vi /etc/sysconfig/clock
ZONE=Asia/Shanghai(查/usr/share/zoneinfo下面的文件)
UTC=false
ARC=false
# rm /etc/localtime
# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
重新啟動即可。
Linux如何修改系統(tǒng)時間和時區(qū)方法補充:
修改時區(qū):
1>
找到相應(yīng)的時區(qū)文件 /usr/share/zoneinfo/Asia/Shanghai
用這個文件替換當(dāng)前的/etc/localtime文件。
或者找你認(rèn)為是標(biāo)準(zhǔn)時間的服務(wù)器,然后
#scp root@xxx.xxx.xxx.xxx:/etc/localtime /etc/localtime
2>
修改/etc/sysconfig/clock文件,修改為:
ZONE="Asia/Shanghai"
UTC=false
ARC=false
修改日期時間:
1>
用date修改日期時間
#date -s 08/24/2006
#date -s 13:02:00
2>
同步BIOS時鐘,強制把系統(tǒng)時間寫入CMOS
#clock -w
另外,查看Bois時間用 #hwclock -r
#tzselect 可以交互式修改時區(qū)
Linux修改系統(tǒng)時區(qū)
1. 查看當(dāng)前時區(qū)
# vi /etc/sysconfig/clock
2. 修改設(shè)置時區(qū)
方法(1) # tzselect 方法(2 僅限于RedHat Linux 和 CentOS) # timeconfig
3. 復(fù)制相應(yīng)的時區(qū)文件,替換系統(tǒng)默認(rèn)時區(qū)
# cp /usr/share/zoneinfo/$主時區(qū)/$次時區(qū) /etc/localtime 對于中國服務(wù)器則執(zhí)行: # cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
4. 將當(dāng)前時間寫入BIOS永久生效(避免重啟后失效)
# hwclock