Linux服务器时区调整
起因:前端项目时间显示少8个小时,查询服务器时间,是UTC标准时间,要调整成UTC+8即CST中国时区
1.查询当前时间:
# date
2017年 11月 09日 星期四 12:19:23 CST
[root@localhost Asia]# date -R
Thu, 09 Nov 2017 12:19:32 +0800
2.首先使用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.
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: Thu Nov 9 03:50:41 UTC 2017.
Universal Time is now: Thu Nov 9 03:50:41 UTC 2017.
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
3.查看有问题的时区文件(下面是正确的,本身有2个服务器,2个不一样所以断定时间不对那个有问题):
# cat /usr/share/zoneinfo/Asia/Shanghai
TZif?\???'p?????Z??6ip ~h?!Iap"^J?#)Cp$Gg%_?&'I&?A?(+(?#?~?p?CDTCSTTZif2
????~6C)?????\???????'p?????????????Z??6ip ~h?!Iap"^J?#)Cp$Gg%_?&'I&?A?(+(?#?q?~?pLMTCDTCST
CST-8
4.从一个服务器拷贝时区文件到另外一个服务器(10.4—>10.6):
1.将10.4服务器上的时区文件拷贝到本地
$ scp root@192.168.10.4:/usr/share/zoneinfo/Asia/Shanghai /Users/hs/Desktop/Shanghai
2.将本地时区文件拷贝到10.6服务器,覆盖对于时区文件
$ scp /Users/hs/Desktop/Shanghai root@192.168.10.6:/usr/share/zoneinfo/Asia/Shanghai
5.查看时间正确,不正确的话此时再次镜像时区选择即可
[root@localhost ~]# tzselect
参考文章: