CentOS时间相关的问题汇总
UTC时间修改为CST时间方法
世界协调时间(Universal Time Coordinated,UTC):
GPS 系统中有两种时间区分,一为UTC,另一为LT(地方时)两者的区别为时区不同,UTC就是0时区的时间,地方时为本地时间,如北京为早上八点(东八区),UTC时间就为零点,时间比北京时晚八小时,以此计算即可。
购买了Linux VPS,CentOS系统,发现服务器时间与北京时间往往不一致,存在时差。可以通过运行命令tzselect然后输入选项前面的数字来一步一步地设置当前系统时区。
[linuxidc@localhost linuxidc.com]$ date 2018年 10月 28日 星期日 03:08:23 UTC 可以执行tzselect命令按提示更换时区,依次选择5-Asia,9-China,1-Beijing Time。 [linuxidc@localhost linuxidc.com]$ 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) Beijing Time 2) Xinjiang Time #? 1 The following information has been given: China Beijing Time Therefore TZ='Asia/Shanghai' will be used. Local time is now: Sun Oct 28 11:12:54 CST 2018. Universal Time is now: Sun Oct 28 03:12:54 UTC 2018. 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 s: Asia/Shanghai
1.将TZ='Asia/Shanghai'; export TZ这行添加到/etc/profile(所有用户生效)或者~/.bash_profile(当前用户生效) 2.退出重新登录即可,也可执行source /etc/profile或source ~/.bash_profile立即生效 3.这时候再执行date查看日期就可以发现时区改为北京时间啦。 [linuxidc@localhost www.linuxidc.com]$ date 2018年 10月 28日 星期日 11:26:14 CST 经过以上步骤,我们的CentOS Linux系统时间和计算机硬件时间终于都是CST时间了,并且都是北京时间。
服务器与CST时间误差8小时的修复方法
1、确认时区是否为shanghai
[root@xxx ~]# ll /etc/localtime
lrwxrwxrwx 1 root root 35 Jul 27 2018 /etc/localtime -> ../usr/share/zoneinfo/Asia/Shanghai
如果不正确,手动修改时区:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
linux系统修改CST时区: ================================================= 初始时间:2012年 09月 14日 星期五 18:15:33 EDT [root@test ~]# mv /etc/localtime /etc/localtime.bak [root@test ~]# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime [root@test ~]# date 修改后的时间: 2012年 09月 15日 星期六 18:25:00 CST
或者
[root@xxx ~]# timedatectl set-timezone Asia/Shanghai
或者:
[root@xxx ~]# ln -sf /usr/share/zoneinfo/Universal /etc/localtime
2、检查本地时间与硬件时间
[root@xxx ~]# timedatectl
Local time: Fri 2018-07-27 00:54:04 CST 本地时间为CST
Universal time: Thu 2018-07-26 16:54:04 UTC UTC时间
RTC time: Thu 2018-07-26 16:54:04 硬件时间默认使用UTC时间
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: yes
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
3、修改本地时间
[root@xxx ~]# date -s '-8hour'
Thu Jul 26 16:54:30 CST 2018
4、将本地时间写入硬件时间并重新检查
[root@xxx ~]# hwclock -w
[root@xxx ~]# timedatectl
Local time: Thu 2018-07-26 16:55:11 CST
Universal time: Thu 2018-07-26 08:55:11 UTC
RTC time: Thu 2018-07-26 08:55:11
Time zone: Asia/Shanghai (CST, +0800)
NTP enabled: yes
NTP synchronized: no
RTC in local TZ: no
DST active: n/a