查看系统时间和时区:
date 查看系统时间
date -R 查看时区
(1)修改时区
tzselect 修改时区
[root@localhost]# tzselect
Please identify a location so that time zone rules can be set correctly.
Please select a continent or ocean.
- Africa
- Americas
- Antarctica
- Arctic Ocean
- Asia
- Atlantic Ocean
- Australia
- Europe
- Indian Ocean
- Pacific Ocean
- none - I want to specify the time zone using the Posix TZ format.
#? 5
Please select a country. - Afghanistan 18) Israel 35) Palestine
- Armenia 19) Japan 36) Philippines
- Azerbaijan 20) Jordan 37) Qatar
- Bahrain 21) Kazakhstan 38) Russia
- Bangladesh 22) Korea (North) 39) Saudi Arabia
- Bhutan 23) Korea (South) 40) Singapore
- Brunei 24) Kuwait 41) Sri Lanka
- Cambodia 25) Kyrgyzstan 42) Syria 42) Syria
- China 26) Laos 43) Taiwan
- Cyprus 27) Lebanon 44) Tajikistan
- East Timor 28) Macau 45) Thailand
- Georgia 29) Malaysia 46) Turkmenistan
- Hong Kong 30) Mongolia 47) United Arab Emirates
- India 31) Myanmar (Burma) 48) Uzbekistan
- Indonesia 32) Nepal 49) Vietnam
- Iran 33) Oman 50) Yemen
- Iraq 34) Pakistan
#? 9
Please select one of the following time zone regions. - Beijing Time
- Xinjiang Time
#? 1
The following information has been given:
China
Beijing Time
Therefore TZ=‘Asia/Shanghai’ will be used.
Local time is now: Tue May 28 11:42:59 CST 2019.
Universal Time is now: Tue May 28 03:42:59 UTC 2019.
Is the above information OK?
- Yes
- No
#? 1
You can make this change permanent for yourself by appending the line
TZ=‘Asia/Shanghai’; export TZ
to the file ‘.profile’ in your home directory; then log out and log in again.
Here is that TZ value again, this time on standard output so that you
can use the /usr/bin/tzselect command in shell scripts:
Asia/Shanghai
[root@localhost]# date
Mon May 27 23:43:18 EDT 2019
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
或
rm /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ln -s /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
(2)修改系统时间
date 查看当前系统时间
yum install -y ntpdate 安装ntpdate程序
ntpdate time.windows.com 从互联网更新系统时间
ntpdate cn.pool.ntp.org 从互联网更新系统时间
date 再次查看当前系统时间
(3)修改时钟文件:
/etc/sysconfig/clock
修改为:
ZONE=“Asia/Shanghai”
UTC=false
ARC=false
(4)linux系统下java程序获取的时间与系统时间不一致,怎么办?
造成这种问题的原因是:你的操作系统时区跟你JVM的时区不一致。
你的操作系统应该是中国的时区,而JVM的时区不一定是中国时区,你在应用服务器的Java虚拟机添加如下配置: -Dfile.encoding=UTF8 -Duser.timezone=GMT+08
在一个精简的Linux安装上jre,所有的java程序获取的时间都不是系统时间。java程序获取的时间都是GMT时间,而系统是北京时间,是GMT+8,刚好相差8小时。只有两种方法可以解决 :
1、在程序中使用java的函数设定时区。
2、在启动java程序时加参数-Duser.timezone=GMT+8
jre是从/etc/sysconfig/clock这个文件中 获取时区信息的。
附clock文件内容:
ZONE=“Asia/Shanghai”
UTC=false
ARC=false
ZONE – 时区
UTC – 表明时钟设置为UTC。
ARC – 仅用于alpha表明使用ARC。