189 8069 5689

Linux及Unix调整系统时间和时区的方法

系统运维

Linux及Unix调整系统时间和时区的方法

一、Linux调整时区
1)找到相应的时区文件 ,如调整到亚洲/上海时区:

让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名与空间、网络空间、营销软件、网站建设、阿荣网站维护、网站推广。

ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
用这个文件替换当前的/etc/localtime文件。
2)修改/etc/sysconfig/clock文件,修改为:
ZONE=”Asia/Shanghai”
UTC=false
ARC=false

3)通过tzselect调整

#tzselect

Pleaseidentifyalocationsothattimezonerulescanbesetcorrectly.Pleaseselectacontinentorocean
1)Africa
2)Americas
3)Antarctica
4)ArcticOcean
5)Asia
6)AtlanticOcean
7)AustraliaEurope
9)IndianOcean
10)PacificOcean
11)none–IwanttospecifythetimezoneusingthePosixTZformat.
输入5,亚洲

4)Bahrain
21)Kazakhstan
38)Russia
5)Bangladesh
22)Korea(North)
39)SaudiArabia
6)Bhutan
23)Korea(South)
40)Singapore
7)Brunei
24)Kuwait
41)SriLankaCambodia
25)Kyrgyzstan
42)Syria
9)China
输入9,中国

Pleaseselectoneofthefollowingtimezoneregions
1)eastChina–Beijing,Guangdong,Shanghai,etc.
2)Heilongjiang
3)centralChina–Gansu,Guizhou,Sichuan,Yunnan,etc.
4)Tibet&mostofXinjiangUyghur
5)southwestXinjiangUyghur
输入1,北京时间

Thefollowinginformationhasbeengiven:
ChinaeastChina–Beijing,Guangdong,Shanghai,etc
ThereforeTZ=”Asia/Shanghai”willbeused.Localtimeisnow:FriJul710:32:18CST2006.UniversalTimeisnow:FriJul702:32:18UTC2006.IstheaboveinformationOK?1)Yes2)No
输入1,确认

二、Linux时间的更改
Linux时钟分为系统时钟(SystemClock)和硬件(RealTimeClock,简称RTC)时钟。系统时钟是指当前LinuxKernel中的时钟,而硬件时钟则是主板上由电池供电的时钟,这个硬件时钟可以在BIOS中进行设置。当Linux启动时,硬件时钟会去读取系统时钟的设置,然后系统时钟就会独立于硬件运作。
Linux中的所有命令(包括函数)都是采用的系统时钟设置。在Linux中,用于时钟查看和设置的命令主要有date、hwclock和clock。其中,clock和hwclock用法相近,只用一个就行,只不过clock命令除了支持x86硬件体系外,还支持Alpha硬件体系。
1、date
查看系统时间
#date
设置系统时间
#date–set“07/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
三、UNIX中的时区TZ设置
修改时区的方法:
Solaris:
在solaris中,修改时区需要修改/etc/TIMEZONE文件,其中的TZ=PRC就表示中国时区,我们可以将其替换为TZ=US/Pacific,再重启机器,就将时区修改为美国太平洋时区了。
这里需要注意三点:
1,在X86的机器上,需要再执行如下命令,更新/etc/rtc_config文件:
#rtc-zzone-name(这里的zone-name就是/etc/TIMEZONE中TZ的值)
#rtc-c
2,到底有多少中时区可以选择呢?我们可以进入/usr/share/lib/zoneinfo目录,其中有很多目录,包括US,也有很多文件,比如PRC;这表示US下还有很多时区,而PRC就是统一的时区。正因为如此,我们才看到TZ=PRC和TZ=US/Pacific这两种不同的形式。
3,需要重启系统使之生效。
AIX:
1,查看当前时区(其他操作系统是date命令即可)
cat/etc/environment(查找TZ所在行)
2,为了妥善起见,建议使用smit修改时区
smitchtz
3,所有的时区信息在/usr/share/lib/zoneinfo目录
HPUX:

修改配置文件,/etc/TIMEZONE为

#vi /etc/TIMEZONETZ=EAT-8export TZ

修改配置文件/etc/default/tz 为

# vi /etc/default/tz EAT-8

修改完成后需要重启系统。

#echo $TZ

EAT-8

(若APP显示的是UTC时间,则需要减去8个小时来转换为本地北京时间。)

四、常见的系统时区定义:

TimeZonesDefinedontheSystem:
NameTimeZoneCUTOffset
CUT0GDTCoordinatedUniversalTimeCUT
GMT0BSTUnitedKingdomCUT
AZOREST1AZOREDTAzores,CapeVerdeCUT-1
FALKST2FALKDTFalklandIslandsCUT-2
GRNLNDST3GRNLNDDTGreenland,EastBrazilCUT-3
AST4ADTCentralBrazilCUT-4

中文:
系统时区定义
定义时区GMT时间定义
CUT0GDT格林威治时间CUT
GMT0BST伦敦都柏林里斯本爱丁堡CUT
AZOREST1AZOREDT亚速尔群岛佛得角群岛CUT-1
FALKST2FALKDT福克兰群岛(西大西洋)CUT-2
GRNLNDST3GRNLNDDT格陵兰巴西利亚纽芬兰CUT-3
AST4ADT大西洋时间(加拿大)南美洲西部圣地亚哥CUT-4
EST5EDT东部时间(美加)印第安纳(东部)CUT-5
CST6CDT中部时间(美加)墨西哥城CUT-6
MST7MDT山地时间(美加)亚利桑那CUT-7
PST8PDT太平洋时间(美加)蒂华纳CUT-8
AST9ADT阿拉斯加CUT-9
HST10HDT夏威夷CUT-10
BST11BDT中途岛萨摩亚群岛CUT-11
NZST-12NZDT纽西兰新西兰(太平洋南部岛国)CUT+12
PAKST-5PAKDT伊斯兰堡卡拉奇CUT+5
WST-4WDT高尔基中亚阿曼CUT+4
MEST-3MEDT土耳其CUT+3
SAUST-3SAUDT沙乌地阿拉伯CUT+3
WET-2WET芬兰CUT+2
USAST-2USADT南非东欧CUT+2
NFT-1DFT挪威(北欧国家)罗马CUT+1

当前文章:Linux及Unix调整系统时间和时区的方法
本文链接:http://cdxtjz.cn/article/cgeeps.html

其他资讯