以前一直用date设置,这次参考网上资料,终于整了个全的。
Linux时钟分为系统时钟(SystemClock)和硬件(RealTimeClock,简称RTC)时钟。系统时钟是指当前LinuxKernel中的时钟,而硬件时钟则是主板上由电池供电的时钟,这个硬件时钟可以在BIOS中进行设置。当Linux启动时,硬件时钟会去读取系统时钟的设置,然后系统时钟就会独立于硬件运作。
Linux中的所有命令(包括函数)都是采用的系统时钟设置。在Linux中,用于时钟查看和设置的命令主要有date、hwclock和clock。其中,clock和hwclock用法相近,只不过clock命令除了支持x86硬件体系外,还支持Alpha硬件体系。
1、date
查看系统时间
#date
设置系统时间
#date--set07/07/0610:19"(月/日/年时:分:秒)
2、hwclock/clock
查看硬件时间
#hwclock--show
#clock--show
设置硬件时间
#hwclock--set--date="07/07/0610:19"(月/日/年时:分:秒)
#clock--set--date="07/07/0610:19"(月/日/年时:分:秒)
3、硬件时间和系统时间的同步
按照前面的说法,重新启动系统,硬件时间会读取系统时间,实现同步,但是在不重新启动的时候,需要用hwclock或clock命令实现同步。
硬件时钟与系统时钟同步:
#hwclock--hctosys(hc代表硬件时间,sys代表系统时间)
或者
#clock--hctosys
系统时钟和硬件时钟同步:
#hwclock--systohc
或者
#clock--systohc
4、时区的设置
#tzselect
Pleaseidentifyalocationsothattimezonerulescanbesetcorrectly.
Pleaseselectacontinentorocean.
1)Africa
2)Americas
3)Antarctica
4)ArcticOcean
5)Asia
6)AtlanticOcean
7)Australia
8)Europe
9)IndianOcean
10)PacificOcean
11)none-IwanttospecifythetimezoneusingthePosixTZformat.
#?输入5,亚洲
Pleaseselectacountry.
1)Afghanistan18)Israel35)Palestine
2)Armenia19)Japan36)Philippines
3)Azerbaijan20)Jordan37)Qatar
4)Bahrain21)Kazakhstan38)Russia
5)Bangladesh22)Korea(North)39)SaudiArabia
6)Bhutan23)Korea(South)40)Singapore
7)Brunei24)Kuwait41)SriLanka
8)Cambodia25)Kyrgyzstan42)Syria
9)China26)Laos43)Taiwan
10)Cyprus27)Lebanon44)Tajikistan
11)EastTimor28)Macau45)Thailand
12)Georgia29)Malaysia46)Turkmenistan
13)HongKong30)Mongolia47)UnitedArabEmirates
14)India31)Myanmar(Burma)48)Uzbekistan
15)Indonesia32)Nepal49)Vietnam
16)Iran33)Oman50)Yemen
17)Iraq34)Pakistan
#?输入9,中国
Pleaseselectoneofthefollowingtimezoneregions.
1)eastChina-Beijing,Guangdong,Shanghai,etc.
2)Heilongjiang
3)centralChina-Gansu,Guizhou,Sichuan,Yunnan,etc.
4)Tibet&mostofXinjiangUyghur
5)southwestXinjiangUyghur
#?输入1,北京时间
Thefollowinginformationhasbeengiven:
China
eastChina-Beijing,Guangdong,Shanghai,etc.
ThereforeTZ='Asia/Shanghai'willbeused.
Loc altimeisnow:FriJul710:32:18CST2006.
UniversalTimeisnow:FriJul702:32:18UTC2006.
IstheaboveinformationOK?
1)Yes
2)No
#?输入1,确认
如果不用tzselect命令,可以修改文件变更时区。
#vi/etc/sysconfig/clock
ZONE=Asia/Shanghai(查/usr/share/zoneinfo下面的文件)
UTC=false
ARC=false
#rm/etc/loc altime
#ln-sf/usr/share/zoneinfo/Asia/Shanghai/etc/loc altime
重新启动即可。
Linux如何修改系统时间和时区方法补充:
修改时区:
1>
找到相应的时区文件/usr/share/zoneinfo/Asia/Shanghai
用这个文件替换当前的/etc/loc altime文件。
或者找你认为是标准时间的服务器,然后
#scproot@xxx.xxx.xxx.xxx:/etc/loc altime/etc/loc altime
2>
修改/etc/sysconfig/clock文件,修改为:
ZONE="Asia/Shanghai"
UTC=false
ARC=false
修改日期时间:
1>
用date修改日期时间
#date-s08/24/2006
#date-s13:02:00
2>
同步BIOS时钟,强制把系统时间写入CMOS
#clock-w
另外,查看Bois时间用#hwclock-r
#tzselect可以交互式修改时区
Linux修改系统时区
1.查看当前时区
#vi/etc/sysconfig/clock
2.修改设置时区
方法(1)#tzselect方法(2仅限于RedHatLinux和CentOS)#timeconfig
3.复制相应的时区文件,替换系统默认时区
#cp/usr/share/zoneinfo/$主时区/$次时区/etc/loc altime对于中国服务器则执行:#cp/usr/share/zoneinfo/Asia/Shanghai/etc/loc altime
4.将当前时间写入BIOS永久生效(避免重启后失效)
#hwclock