timedatectl

用于在 Linux 中设置或查询系统时间、日期和时区等配置。

补充说明

在 Linux 运维中,通常使用此命令来设置或更改当前的日期、时间和时区,或启用自动系统时钟与远程 NTP 服务器同步,以确保 Linux 系统始终保持正确的时间。

概要

1timedatectl [OPTIONS...] COMMAND ...

主要用途

  • 转换时间到选定的格式,默认为当前。
  • 设置系统时间。

参数

 1Query or change system time and date settings.
 2
 3  -h --help                显示帮助信息。
 4     --version             显示软件包版本。
 5     --no-pager            不用将输出通过管道传输到寻呼机(pager)。
 6     --no-ask-password     不提示输入密码。
 7  -H --host=[USER@]HOST    在远程主机上操作
 8  -M --machine=CONTAINER   在本地容器上操作。
 9     --adjust-system-clock 更改本地 RTC 模式时调整系统时钟。
10     --monitor		   监控systemd-timesyncd的状态
11  -p --property=NAME       仅显示此名称的属性
12  -a --all		   显示所有属性,包括空属性
13     --value		   显示属性时,只打印值
14
15Commands:
16  status                   显示当前的时间设置。
17  set-time TIME            设置系统时间。
18  set-timezone ZONE        设置系统时区。
19  list-timezones           显示已知时区。
20  set-local-rtc BOOL       控制 RTC 是否在当地时间。(BOOL 的值可以是 1 / true0 / false)
21  set-ntp BOOL             启用或禁用网络时间同步。(BOOL 的值可以是 1 / true0 / false)
22  timesync-status          显示 systemd-timesyncd 的状态。
23  show-timesync            显示 systemd-timesyncd 的属性。

例子

显示系统当前时间和日期

1$ timedatectl status
2      Local time: 五 2022-04-08 17:06:40 CST
3  Universal time: 五 2022-04-08 09:06:40 UTC
4        RTC time: 五 2022-04-08 17:04:02
5       Time zone: Asia/Shanghai (CST, +0800)
6     NTP enabled: n/a
7NTP synchronized: no
8 RTC in local TZ: yes
9      DST active: n/a

显示系统所有可用的时区

1$ timedatectl show
2Unknown operation show
3$ timedatectl list-timezones
4Africa/Abidjan
5Africa/Accra
6Africa/Addis_Ababa

将本地时区从上海(Asia/Shanghai)设置为阿姆斯特丹(Europe/Amsterdam)

1$ timedatectl set-timezone "Europe/Amsterdam"

将本地时区设置为协调世界时(UTC)

1$ timedatectl set-timezone UTC

设置系统时间(格式:HH:MM:SS)

1$ timedatectl set-time "07:25:46"

设置系统日期(格式:YYYY-MM-DD)

1$ timedatectl set-time "2021-12-12"

如果只设置日期,那么时间将默认设置为 “00:00:00″(建议同时设置日期和时间)

1$ timedatectl set-time "2021-12-12 07:25:46"

将硬件时钟(RTC)设置为本地时区(不建议,RTC 时钟统一使用 UTC 更恰当,避免在时区更改和夏令时调整方面产生各种问题)

1$ timedatectl set-local-rtc 1

将硬件时钟(RTC)设置为协调世界时间(UTC)

1$ timedatectl set-local-rtc 0

启用 NTP 自动时间同步

1$ timedatectl set-ntp true

禁用 NTP 自动时间同步

1$ timedatectl set-ntp false

查看 systemd-timesyncd 服务的状态

 1$ timedatectl timesync-status
 2       Server: 91.189.94.4 (ntp.ubuntu.com)
 3Poll interval: 17min 4s (min: 32s; max 34min 8s)
 4         Leap: normal
 5      Version: 4
 6      Stratum: 2
 7    Reference: 91EECB0E
 8    Precision: 1us (-23)
 9Root distance: 29.922ms (max: 5s)
10       Offset: +2.497ms
11        Delay: 199.540ms
12       Jitter: 5.834ms
13 Packet count: 6
14    Frequency: +13.039ppm

systemd-timedated 可能默认配置了谷歌的 NTP 服务器(如 time1.google.com),为了顺利完成网络时间同步,您可以编辑 /etc/systemd/timesyncd.conf 文件添加自己的 NTP 服务器地址。 来源:https://github.com/jaywcjlove/linux-command

最后修改于: Wednesday, January 31, 2024
欢迎关注微信公众号,留言交流。

相关文章:

翻译: