欢迎您访问新疆栾骏商贸有限公司,公司主营电子五金轴承产品批发业务!
全国咨询热线: 400-8878-609

新闻资讯

技术教程

Linux如何设置主机时间_Linux timedatectl时间管理命令【系统】

作者:尼克2026-01-13 00:00:00
timedatectl可管理Linux系统时间,包括查看状态、手动设时、切换时区、启停NTP同步及强制校准;操作需root权限,NTP启用时手动设时可能被覆盖。

如果您在Linux系统中发现主机时间不准确,可能导致日志记录错误、证书验证失败或定时任务执行异常。以下是使用timedatectl命令管理主机时间的具体操作步骤:

一、查看当前系统时间与时间状态

timedatectl命令用于查询和更改系统时钟设置,包括本地时间、UTC时间、时区及网络时间同步状态。通过该命令可快速确认时间是否正确、NTP是否启用以及系统是否处于同步状态。

1、在终端中输入以下命令查看完整时间信息:
timedatectl status

2、检查输出中的“Local time”、“Universal time”、“Time zone”及“System clock synchronized”字段值。

3、若“System clock synchronized”显示为no,则表示系统未与NTP服务器同步,需进一步配置。

二、手动设置系统时间

当NTP服务不可用或需临时校准时间时,可通过timedatectl set-time直接设定日期与时间。此操作要求用户具有root权限,且会立即覆盖当前系统时钟。

1、使用sudo权限执行时间设置命令,格式为:timedatectl set-time 'YYYY-MM-DD HH:MM:SS';
例如:timedatectl set-time '2025-05-20 14:30:00'

2、设置完成后,再次运行timedatectl status确认变更已生效。

3、注意:手动设置时间后,若NTP服务处于启用状态,可能在数秒内被自动覆盖,建议先禁用NTP再执行手动设置。

三、设置系统时区

时区配置影响本地时间显示及应用程序行为。timedatectl支持从预置时区列表中选择并应用,无需修改/etc/localtime软链接等底层文件。

1、列出所有可用时区:
timedatectl list-timezones

2、查找目标时区(如上海):
timedatectl list-timezones | grep -i shanghai

3、设置时区为Asia/Shanghai:timedatectl set-timezone Asia/Shanghai

4、执行后立即生效,无需重启服务或系统。

四、启用或禁用NTP网络时间同步

NTP同步确保系统时间长期保持高精度。timedatectl可控制systemd-timesyncd服务的启停,该服务为轻量级NTP客户端,默认由systemd提供。

1、启用NTP同步:timedatectl set-ntp true

2、禁用NTP同步:timedatectl set-ntp false

3、启用后,systemd-timesyncd服务将自动启动,并周期性与默认NTP服务器(如time1.google.com)通信校准时间。

4、若需指定自定义NTP服务器,应编辑/etc/systemd/timesyncd.conf文件,在[Time]段落下添加NTP=行,再重启timesyncd服务。

五、强制触发一次NTP时间同步

当NTP已启用但系统尚未完成首次同步,或怀疑时间偏差较大时,可手动触发同步请求,避免等待默认轮询间隔。

1、停止timesyncd服务:
sudo systemctl stop systemd-timesyncd

2、清除上次同步缓存:
sudo rm /var/lib/systemd/timesync/clock

3、重新启动服务并强制同步:
sudo systemctl start systemd-timesyncd && sudo systemctl kill --signal=SIGUSR1 systemd-timesyncd

4、检查同步结果:
timedatectl timesync-status