本文最后更新于 319 天前,其中的信息可能已经过时,如有错误请发送邮件到wuxianglongblog@163.com
方式1:删除本地时间,并设置时区为上海
时区:/etc/localtime
使用 /etc/localtime 文件修改时区
先查看一下当前的时区,下面这个例子中使用 UTC 即世界统一标准时区。假设你可能需要改为东八区。
[root@localhost ~]# date
Wed Jan 11 16:58:51 EST 2023
[root@localhost ~]#
在某些发行版的 Linux 系统(比如 CentOS)中,系统时区是由 /etc/localtime 文件控制的,所以可以通过修改 /etc/localtime 文件来修改系统时区。
删除 /etc/localtime 文件,
[root@localhost ~]# date
Wed Jan 11 16:58:51 EST 2023
[root@localhost ~]# cd /etc/
[root@localhost etc]# rm -f localtime
东八区所有的时区文件都可以在 ll /usr/share/zoneinfo/Asia目录下找到:
[root@localhost etc]# ll /usr/share/zoneinfo/Asia/
total 444
-rw-r--r--. 4 root root 159 Mar 23 2022 Aden
-rw-r--r--. 1 root root 1003 Mar 23 2022 Almaty
-rw-r--r--. 1 root root 8764 Mar 23 2022 Amman
-rw-r--r--. 1 root root 1194 Mar 23 2022 Anadyr
-rw-r--r--. 1 root root 989 Mar 23 2022 Aqtau
-rw-r--r--. 1 root root 1019 Mar 23 2022 Aqtobe
-rw-r--r--. 2 root root 623 Mar 23 2022 Ashgabat
-rw-r--r--. 2 root root 623 Mar 23 2022 Ashkhabad
-rw-r--r--. 1 root root 997 Mar 23 2022 Atyrau
-rw-r--r--. 1 root root 964 Mar 23 2022 Baghdad
-rw-r--r--. 2 root root 197 Mar 23 2022 Bahrain
-rw-r--r--. 1 root root 1241 Mar 23 2022 Baku
-rw-r--r--. 3 root root 180 Mar 23 2022 Bangkok
-rw-r--r--. 1 root root 1227 Mar 23 2022 Barnaul
-rw-r--r--. 1 root root 2149 Mar 23 2022 Beirut
-rw-r--r--. 1 root root 1017 Mar 23 2022 Bishkek
-rw-r--r--. 1 root root 201 Mar 23 2022 Brunei
-rw-r--r--. 2 root root 286 Mar 23 2022 Calcutta
-rw-r--r--. 1 root root 1229 Mar 23 2022 Chita
-rw-r--r--. 1 root root 963 Mar 23 2022 Choibalsan
-rw-r--r--. 5 root root 556 Mar 23 2022 Chongqing
-rw-r--r--. 5 root root 556 Mar 23 2022 Chungking
-rw-r--r--. 1 root root 373 Mar 23 2022 Colombo
-rw-r--r--. 2 root root 330 Mar 23 2022 Dacca
-rw-r--r--. 1 root root 2306 Mar 23 2022 Damascus
-rw-r--r--. 2 root root 330 Mar 23 2022 Dhaka
-rw-r--r--. 1 root root 225 Mar 23 2022 Dili
-rw-r--r--. 2 root root 159 Mar 23 2022 Dubai
-rw-r--r--. 1 root root 593 Mar 23 2022 Dushanbe
-rw-r--r--. 1 root root 2028 Mar 23 2022 Famagusta
-rw-r--r--. 1 root root 9333 Mar 23 2022 Gaza
-rw-r--r--. 5 root root 556 Mar 23 2022 Harbin
-rw-r--r--. 1 root root 9361 Mar 23 2022 Hebron
-rw-r--r--. 2 root root 361 Mar 23 2022 Ho_Chi_Minh
-rw-r--r--. 2 root root 1217 Mar 23 2022 Hong_Kong
-rw-r--r--. 1 root root 893 Mar 23 2022 Hovd
-rw-r--r--. 1 root root 1236 Mar 23 2022 Irkutsk
-rw-r--r--. 3 root root 1930 Mar 23 2022 Istanbul
-rw-r--r--. 1 root root 366 Mar 23 2022 Jakarta
-rw-r--r--. 1 root root 237 Mar 23 2022 Jayapura
-rw-r--r--. 3 root root 9113 Mar 23 2022 Jerusalem
-rw-r--r--. 1 root root 189 Mar 23 2022 Kabul
-rw-r--r--. 1 root root 1170 Mar 23 2022 Kamchatka
-rw-r--r--. 1 root root 403 Mar 23 2022 Karachi
-rw-r--r--. 2 root root 159 Mar 23 2022 Kashgar
-rw-r--r--. 2 root root 210 Mar 23 2022 Kathmandu
-rw-r--r--. 2 root root 210 Mar 23 2022 Katmandu
-rw-r--r--. 1 root root 1283 Mar 23 2022 Khandyga
-rw-r--r--. 2 root root 286 Mar 23 2022 Kolkata
-rw-r--r--. 1 root root 1215 Mar 23 2022 Krasnoyarsk
-rw-r--r--. 1 root root 384 Mar 23 2022 Kuala_Lumpur
-rw-r--r--. 1 root root 493 Mar 23 2022 Kuching
-rw-r--r--. 4 root root 159 Mar 23 2022 Kuwait
-rw-r--r--. 2 root root 1241 Mar 23 2022 Macao
-rw-r--r--. 2 root root 1241 Mar 23 2022 Macau
-rw-r--r--. 1 root root 1230 Mar 23 2022 Magadan
-rw-r--r--. 2 root root 274 Mar 23 2022 Makassar
-rw-r--r--. 1 root root 333 Mar 23 2022 Manila
-rw-r--r--. 2 root root 159 Mar 23 2022 Muscat
-rw-r--r--. 2 root root 2002 Mar 23 2022 Nicosia
-rw-r--r--. 1 root root 1169 Mar 23 2022 Novokuznetsk
-rw-r--r--. 1 root root 1227 Mar 23 2022 Novosibirsk
-rw-r--r--. 1 root root 1215 Mar 23 2022 Omsk
-rw-r--r--. 1 root root 1011 Mar 23 2022 Oral
-rw-r--r--. 3 root root 180 Mar 23 2022 Phnom_Penh
-rw-r--r--. 1 root root 381 Mar 23 2022 Pontianak
-rw-r--r--. 1 root root 253 Mar 23 2022 Pyongyang
-rw-r--r--. 2 root root 197 Mar 23 2022 Qatar
-rw-r--r--. 1 root root 1019 Mar 23 2022 Qostanay
-rw-r--r--. 1 root root 1049 Mar 23 2022 Qyzylorda
-rw-r--r--. 2 root root 257 Mar 23 2022 Rangoon
-rw-r--r--. 4 root root 159 Mar 23 2022 Riyadh
-rw-r--r--. 2 root root 361 Mar 23 2022 Saigon
-rw-r--r--. 1 root root 1206 Mar 23 2022 Sakhalin
-rw-r--r--. 1 root root 591 Mar 23 2022 Samarkand
-rw-r--r--. 2 root root 645 Mar 23 2022 Seoul
-rw-r--r--. 5 root root 556 Mar 23 2022 Shanghai
-rw-r--r--. 2 root root 384 Mar 23 2022 Singapore
-rw-r--r--. 1 root root 1216 Mar 23 2022 Srednekolymsk
-rw-r--r--. 2 root root 764 Mar 23 2022 Taipei
-rw-r--r--. 1 root root 607 Mar 23 2022 Tashkent
-rw-r--r--. 1 root root 1040 Mar 23 2022 Tbilisi
-rw-r--r--. 2 root root 9776 Mar 23 2022 Tehran
-rw-r--r--. 3 root root 9113 Mar 23 2022 Tel_Aviv
-rw-r--r--. 2 root root 201 Mar 23 2022 Thimbu
-rw-r--r--. 2 root root 201 Mar 23 2022 Thimphu
-rw-r--r--. 2 root root 292 Mar 23 2022 Tokyo
-rw-r--r--. 1 root root 1227 Mar 23 2022 Tomsk
-rw-r--r--. 2 root root 274 Mar 23 2022 Ujung_Pandang
-rw-r--r--. 2 root root 893 Mar 23 2022 Ulaanbaatar
-rw-r--r--. 2 root root 893 Mar 23 2022 Ulan_Bator
-rw-r--r--. 2 root root 159 Mar 23 2022 Urumqi
-rw-r--r--. 1 root root 1262 Mar 23 2022 Ust-Nera
-rw-r--r--. 3 root root 180 Mar 23 2022 Vientiane
-rw-r--r--. 1 root root 1216 Mar 23 2022 Vladivostok
-rw-r--r--. 1 root root 1215 Mar 23 2022 Yakutsk
-rw-r--r--. 2 root root 257 Mar 23 2022 Yangon
-rw-r--r--. 1 root root 1253 Mar 23 2022 Yekaterinburg
-rw-r--r--. 1 root root 1185 Mar 23 2022 Yerevan
[root@localhost etc]#
其他国家的时区文件,可以在 `/usr/share/zoneinfo/ 找到。
创建一个软连接 /etc/localtime ,指向上述Asia 目录中的 Shanghai文件:
[root@localhost etc]# ln -s /usr/share/zoneinfo/Asia/Shanghai localtime
[root@localhost etc]# date
Thu Jan 12 06:06:34 CST 2023
[root@localhost etc]# pwd
/etc
[root@localhost etc]#
到此,已经将系统的时区改为中国上海所在的时区:
使用 /etc/timezone 文件修改时区
在某些发行版的 Linux 系统(比如 Ubuntu)中,系统时区是由 /etc/timezone 文件控制的,所以可以通过修改 /etc/timezone 文件来修改系统时区。举个例子,你现在的时区可能在美国东部时间(比如:纽约):
cat /etc/timezone
America/New_York
需要设置到美国太平洋时间(比如:洛杉矶),修改 /etc/timezone 时间:
vim /etc/timezone
America/Los_Angeles
当然,也可以通过在命令行上修改 TZ 的值来设置时区:
export TZ=America/Los_Angeles
方式2:通过tzselect调整
[root@dev ~]# 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
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: Sun Dec 18 21:34:19 CST 2016.
Universal Time is now: Sun Dec 18 13:34:19 UTC 2016.
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