主要使用命令總結
查看當前系統時區
timedatectl | grep Time
查找某地的時區
timedatectl list-timezones | grep Shanghai
timedatectl list-timezones | grep Tokyo
設置系統時區
timedatectl set-timezone "Asia/Shanghai"
以下復制於 https://www.cnblogs.com/zhi-leaf/p/6282301.html
timedatectl命令對於RHEL / CentOS 7和基於Fedora 21+的分布式系統來說,是一個新工具,它作為systemd系統和服務管理器的一部分,代替舊的傳統的用在基於Linux分布式系統的sysvinit守護進程的date命令。
timedatectl命令可以查詢和更改系統時鍾和設置,你可以使用此命令來設置或更改當前的日期,時間和時區,或實現與遠程NTP服務器的自動系統時鍾同步。
在本教程中,我要講的是,如何在你的Linux系統上,通過使用來自於終端使用timedatectl命令的NTP,設置date、time、timezone和synchronize time來管理時間。讓你的Linux服務器或系統保持正確的時間是一個很好的實踐,它有以下優點:
1)維護及時操作的系統任務,因為在Linux中的大多數任務都是由時間來控制的。
2)記錄事件和系統上其它信息等的正確時間。
如何查找和設置Linux本地時區
1、要顯示系統的當前時間和日期,使用命令行中的timedatectl命令,如下:
timedatectl status
timedatectl
[root@localhost vagrant]# timedatectl Local time: 水 2020-06-17 11:56:49 CEST Universal time: 水 2020-06-17 09:56:49 UTC RTC time: 水 2020-06-17 09:56:48 Time zone: Europe/Berlin (CEST, +0200) NTP enabled: n/a NTP synchronized: no RTC in local TZ: no DST active: yes Last DST change: DST began at 日 2020-03-29 01:59:59 CET 日 2020-03-29 03:00:00 CEST Next DST change: DST ends (the clock jumps one hour backwards) at 日 2020-10-25 02:59:59 CEST 日 2020-10-25 02:00:00 CET [root@localhost vagrant]#
在上面的示例中,RTC time就是硬件時鍾的時間。
2、Linux系統上的time總是通過系統上的timezone設置的,要查看當前時區,按如下做:
timedatectl | grep Time
[root@localhost vagrant]# timedatectl | grep Time Time zone: Europe/Berlin (CEST, +0200)
3、要查看所有可用的時區,運行以下命令:
timedatectl list-timezones
[root@localhost vagrant]# timedatectl list-timezones Africa/Abidjan Africa/Accra Africa/Addis_Ababa Africa/Algiers Africa/Asmara Africa/Bamako Africa/Bangui Africa/Banjul
...
4、要根據地理位置找時區,運行以下命令:
timedatectl list-timezones | grep Shanghai
timedatectl list-timezones | grep Tokyo
[root@localhost vagrant]# timedatectl list-timezones | grep Shanghai Asia/Shanghai [root@localhost vagrant]# timedatectl list-timezones | grep Tokyo Asia/Tokyo
5、要在Linux中設置本地時區,使用set-timezone開關,如下所示。
# timedatectl set-timezone "Asia/Kolkata"
中國上海的時區:
# timedatectl set-timezone "Asia/Shanghai"
推薦使用和設置協調世界時,即UTC。
# timedatectl set-timezone UTC
你需要輸入正確命名的時區,否者在你改變時區的時候,可能會發生錯誤。在下面的例子中,由於 “Asia/Kalkata” 這個時區是不正確的,因此導致了錯誤。
如何在Linux中設置時間和日期
你可以使用timedatectl命令,設置系統上的日期和時間,如下所示:
6、設置Linux中的時間。只設置時間的話,我們可以使用set-time開關以及HH:MM:SS(小時,分,秒)的時間格式。
# timedatectl set-time 15:58:30
7、在Linux中設置日期。只設置日期的話,我們可以使用set-time開關以及YY:MM:DD(年,月,日)的日期格式。
# timedatectl set-time 20151120
8、設置日期和時間:
# timedatectl set-time '16:10:40 2015-11-20'
如何在Linux中查找和設置硬件時鍾
9、要設置硬件時鍾以協調世界時,UTC,可以使用 set-local-rtc boolean-value選項,如下所示:
首先確定你的硬件時鍾是否設置為本地時區:
# timedatectl | grep local
將你的硬件時鍾設置為本地時區:
# timedatectl set-local-rtc 1
將你的硬件時鍾設置為協調世界時(UTC):
# timedatectl set-local-rtc 0
將Linux系統時鍾同步到遠程NTP服務器
NTP即Network Time Protocol(網絡時間協議),是一個互聯網協議,用於同步計算機之間的系統時鍾。timedatectl實用程序可以自動同步你的Linux系統時鍾到使用NTP的遠程服務器。
注意,你必須在系統上安裝NTP以實現與NTP服務器的自動時間同步。
要開始自動時間同步到遠程NTP服務器,在終端鍵入以下命令。
# timedatectl set-ntp true
要禁用NTP時間同步,在終端鍵入以下命令。
# timedatectl set-ntp false