Linux系統如何更改時間時區

夢共裡醉發表於2020-12-14
對於許多與系統相關的任務和程式,使用正確的時區是必不可少的。例如,cron守護程式使用系統的時區執行cron作業,日誌檔案中的時間戳基於同一系統的時區。

環境

Centos8

檢查現在的時區

timedatectl是一個命令行實用程式,允許您檢視和更改系統的時間和日期。

[root@localhost ~]# timedatectl 
               Local time: Tue 2020-03-31 16:35:23 CST
           Universal time: Tue 2020-03-31 08:35:23 UTC
                 RTC time: Tue 2020-03-31 08:35:23
                Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

Centos8如何更改時區Centos8如何更改時區

更改時區

在更改時區之前,您需要找出要使用的時區名稱。要列出所有可用時區,請使用下面的命令

[root@localhost ~]# timedatectl list-timezones
…
Asia/Samarkand
Asia/Seoul
Asia/Shanghai
Asia/Singapore
Asia/Srednekolymsk
…

然後使用set-timezone選項更改時區,比如更改為Europe/Berlin:

[root@localhost ~]# timedatectl set-timezone Europe/Berlin

Centos8如何更改時區Centos8如何更改時區

使用建立連結的方式更改時區

如果執行的是舊版本的Centos,比如Centos6之前的版本,並且系統上不存在timedatectl命令,則可以通過將/etc/localtime符號連結到/usr/share/zoneinfo目錄中的時區檔案來更改時區。

檢視一下/usr/share/zoninfo下面的時區檔案,

[root@localhost ~]# ls /usr/share/zoneinfo/
[root@localhost ~]# ls /usr/share/zoneinfo/Asia/

Centos8如何更改時區Centos8如何更改時區

Centos8如何更改時區Centos8如何更改時區
現在替換時區檔案。

[root@localhost ~]# ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
[root@localhost ~]# date
Tue Mar 31 16:53:59 CST 2020

可以看到已經切換到了CST中國標準時間

總結

在本文中,使用了兩種方式修改時區。一種是使用timedatectl,另一種方式使用建立連結的方式。

相關文章