Linux命令-更新系统时间

查看系统时间和时区:
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.

  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.
  12. Afghanistan 18) Israel 35) Palestine
  13. Armenia 19) Japan 36) Philippines
  14. Azerbaijan 20) Jordan 37) Qatar
  15. Bahrain 21) Kazakhstan 38) Russia
  16. Bangladesh 22) Korea (North) 39) Saudi Arabia
  17. Bhutan 23) Korea (South) 40) Singapore
  18. Brunei 24) Kuwait 41) Sri Lanka
  19. Cambodia 25) Kyrgyzstan 42) Syria 42) Syria
  20. China 26) Laos 43) Taiwan
  21. Cyprus 27) Lebanon 44) Tajikistan
  22. East Timor 28) Macau 45) Thailand
  23. Georgia 29) Malaysia 46) Turkmenistan
  24. Hong Kong 30) Mongolia 47) United Arab Emirates
  25. India 31) Myanmar (Burma) 48) Uzbekistan
  26. Indonesia 32) Nepal 49) Vietnam
  27. Iran 33) Oman 50) Yemen
  28. Iraq 34) Pakistan
    #? 9
    Please select one of the following time zone regions.
  29. Beijing Time
  30. 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?

  1. Yes
  2. 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。

发布了1 篇原创文章 · 获赞 0 · 访问量 327
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览