一、命令简介
timedatectl
命令用于查看和设置系统的时间和日期,以及配置时区和 NTP(Network Time Protocol)设置。
相关命令:cal
显示日历、 date
查看、设置日期
二、命令参数
格式:
timedatectl [选项]
选项:
-
status
:显示当前系统时间、时区和 NTP 设置的状态。 -
set-time
:手动设置系统时间。 -
set-timezone
:设置系统时区。 -
set-ntp
:启用或禁用 NTP 自动同步。
三、命令示例
查看当前系统时间和日期信息
timedatectl
查看系统时区信息
timedatectl | grep 'Time zone'
设置系统时区
sudo timedatectl set-timezone <时区>
,例如:
sudo timedatectl set-timezone Asia/Shanghai
执行成功则没有输出。
如果不清除有哪些时区可以使用,以下命令查看查看时区
timedatectl list-timezones
将会列出所有时区。不过这时区太多了,挑花眼,可以搭配 grep 筛选一下
更推荐使用 tzselect
命令,交互式选择时区,先选择亚洲,再选择中国,再选择一个中国的城市。不用默写时区。
手动设置系统时间
sudo timedatectl set-time 'YYYY-MM-DD HH:MM:SS'
,例如:
sudo timedatectl set-time '2024-03-11 16:30:00'
将系统时钟设置为本地时间或 UTC 时间
sudo timedatectl set-local-rtc 1 # 设置为本地时间
sudo timedatectl set-local-rtc 0 # 设置为 UTC 时间
三系统时间不同步问题:
如果你在电脑上安装过双系统、三系统,那你可能感受过从 Linux 切换到 Windows 的时候,时间误差 8 小时。原因是 Linux 和 macOS 使用的 UTC 时间,会在主机上存储 0 区时间,而系统时间显示为 0 区 +8 小时时区时间,它是正确的。但是回到 Windows 时,Windows 使用本地时间,系统时间显示为主机时间,不加时区,所以就误差 8 小时。也跟 Windows 启动时不会自动与网络同步时间有关。
多种解决方式:
- 三种系统设置为同一时钟格式
- 打开 Windows 时钟同步服务。这样三个系统都会在开机时自动同步时间。
启用/禁用网络时间同步(NTP)
sudo timedatectl set-ntp true # 启用 NTP
sudo timedatectl set-ntp false # 禁用 NTP
注意事项
- 使用
timedatectl
命令需要管理员权限(通常需要使用sudo
)。 - 可以通过该命令轻松地调整系统的时间、日期和时区设置,确保系统运行在正确的时间环境下,并且可以选择是否启用自动时间同步功能。
视频学习:一分钟学会:使用timedatectl修改系统时间_哔哩哔哩_bilibili