對于許多與系統相關的任務和進程,使用正確的時區至關重要。 例如,cron守護程序使用系統的時區執行cron作業,而日志文件中的時間戳基于系統的同一時區。
在Ubuntu上,系統的時區是在安裝過程中設置的,但以后可以輕松更改。
本文介紹了如何使用命令行或通過GUI在Ubuntu 20.04上設置或更改時區。
先決條件
只有具有sudo特權的root或用戶可以設置或更改系統的時區。
檢查當前時區
timedatectl是一個命令行程序,可讓您查看和更改系統的時間和日期。 它在所有基于現代systemd的Linux系統上都可用,包括Ubuntu 20.04。
要打印當前系統的時區,請不帶任何參數地調用timedatectl:timedatectl
以下輸出顯示系統的時區設置為“ UTC”:Local time: Wed 2020-05-06 19:33:20 UTC
Universal time: Wed 2020-05-06 19:33:20 UTC
RTC time: Wed 2020-05-06 19:33:22
Time zone: UTC (UTC, +0000)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
通過將/etc/localtime符號鏈接到/usr/share/zoneinfo目錄中的二進制時區標識符來配置系統時區。
查看當前系統時區的另一個選項是找到symlink到的文件。 指向:ls -l /etc/localtimelrwxrwxrwx 1 root root 27 Dec 10 12:59 /etc/localtime -> /usr/share/zoneinfo/Etc/UTC
系統的時區也寫入了/etc/timezone文件:cat /etc/timezoneUTC
使用timedatectl命令更改時區
更改時區之前,您需要找出要使用的時區的長名稱。 時區使用“地區/城市”格式。
要列出所有可用時區,可以列出/usr/share/zoneinfo目錄中的文件,也可以使用list-timezones選項調用timedatectl命令:timedatectl list-timezones...
America/Montevideo
America/Nassau
America/New_York
America/Nipigon
America/Nome
America/Noronha
...
確定了您所在位置的準確時區后,以sudo用戶身份運行以下命令:sudo timedatectl set-timezone your_time_zone
例如,將系統的時區更改為America/New_York:sudo timedatectl set-timezone America/New_York
調用timedatectl命令以驗證更改:timedatectlLocal time: Wed 2020-05-06 15:41:42 EDT
Universal time: Wed 2020-05-06 19:41:42 UTC
RTC time: Wed 2020-05-06 19:41:48
Time zone: America/New_York (EDT, -0400)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
使用GUI更改時區
如果您運行的是Ubuntu桌面,則可以通過GUI更改當前系統的時區。
通過單擊Settings圖標打開系統設置窗口
在系統設置窗口中,單擊Date & Time選項卡。 如果Automatic Time Zone設置為ON,并且您已啟用Internet連接和位置服務,則應根據您的位置自動設置時區。
選擇新時區 ,您可以點擊地圖或通過搜索欄搜索時區。
完成后,單擊×關閉窗口。
結論
我們向您展示了如何更改Ubuntu系統的時區。
如有任何疑問,請隨時發表評論。