Linux

关注公众号 jb51net

关闭
首页 > 网站技巧 > 服务器 > Linux > Linux同步系统时间和硬件时间同步

Linux同步系统时间和硬件时间同步的具体方法

作者:网硕互联的小客服

在 Linux 系统中,时间同步分为两部分:系统时间(System Time) 和 硬件时间(Hardware Time 或 RTC, Real-Time Clock),本文给大家介绍了Linux同步系统时间和硬件时间同步的具体方法,需要的朋友可以参考下

在 Linux 系统中,时间同步分为两部分:系统时间(System Time)硬件时间(Hardware Time 或 RTC, Real-Time Clock)。系统时间是 Linux 内核维护的时间,主要用于运行时的任务调度和时间记录;硬件时间是 BIOS 或主板维护的时间,独立于操作系统,即使关机也能继续保持准确。

以下是同步时间的方法和硬件时间同步的具体步骤:

1. 同步系统时间:使用 NTP 或 Chrony

系统时间通常通过网络时间协议(NTP)服务器来同步。

1.1 使用ntp工具同步时间

安装 NTP 服务

在 Debian/Ubuntu 系列:

sudo apt update
sudo apt install ntp

在 CentOS/RHEL 系列:

sudo yum install ntp 

启动 NTP 服务

启动并设置为开机自启:

sudo systemctl start ntp
sudo systemctl enable ntp

同步时间

手动同步时间:

sudo ntpdate pool.ntp.org

1.2 使用chrony工具同步时间

Chrony 是一个轻量级时间同步工具,适合在不稳定网络环境下使用。

安装 Chrony

在 Debian/Ubuntu 系列:

sudo apt update
sudo apt install chrony

在 CentOS/RHEL 系列:

sudo yum install chrony 

启动 Chrony 服务

启动并设置为开机自启:

sudo systemctl start chronyd
sudo systemctl enable chronyd

手动同步时间

强制立即同步系统时间:

sudo chronyc -a makestep 

验证时间同步状态

检查时间源状态:

chronyc sources 

1.3 使用timedatectl同步时间

timedatectl 是现代 Linux 发行版中管理时间的工具,基于 systemd

启用时间同步

检查时间同步状态:

timedatectl status 

如果未启用 NTP 时间同步,使用以下命令启用:

sudo timedatectl set-ntp true 

手动更新时间

如果需要手动立即同步时间,可以结合 ntpdate 使用:

sudo ntpdate pool.ntp.org 

2. 硬件时间同步:系统时间与硬件时间的关系

2.1 硬件时间与系统时间的区别

Linux 系统启动时,会从硬件时间获取初始值,并将其加载为系统时间。正常运行时,系统时间与硬件时间可以独立运行,但需要定期同步以确保一致性。

2.2 查看硬件时间

使用 hwclock 查看硬件时间:

sudo hwclock --show 

输出示例:

2025-11-20 15:45:32.213244+00:00

2.3 将系统时间同步到硬件时间

如果系统时间正确,但硬件时间不一致,可以将系统时间写入硬件时间:

sudo hwclock --systohc 

2.4 将硬件时间同步到系统时间

如果硬件时间正确,但系统时间不一致,可以将硬件时间加载为系统时间:

sudo hwclock --hctosys 

2.5 检查和设置硬件时间的时区

硬件时间可以设置为 UTC(协调世界时)本地时间(Local Time)

查看当前硬件时间的时区设置:

timedatectl 

输出示例:

RTC in local TZ: no

如果需要更改硬件时间的时区设置(如设置为 UTC):

sudo timedatectl set-local-rtc 0 

3. 自动化时间同步

为了保持时间一致性,可以通过以下方式自动同步时间:

3.1 定时同步 NTP 时间

添加 ntpdate 到 Cron 定时任务:

sudo crontab -e 

添加以下内容:

0 * * * * /usr/sbin/ntpdate pool.ntp.org 

3.2 启用硬件时间与系统时间自动同步

确保系统时间与硬件时间一致,可以在系统启动时自动同步:

sudo hwclock --systohc 

4. 常见问题与解决方法

4.1 时间不同步的原因

4.2 强制同步时间失败

ping pool.ntp.org 

5. 总结

系统时间同步步骤:

  1. 使用 NTP 或 Chrony 工具同步系统时间。
  2. 使用 timedatectl 确保时间同步功能已启用。

硬件时间同步步骤:

查看硬件时间:

sudo hwclock --show 

同步系统时间到硬件时间:

sudo hwclock --systohc 

根据需要调整硬件时间的时区设置。

通过定期自动同步系统时间和硬件时间,可以确保 Linux 系统时间的准确性和一致性。

以上就是Linux同步系统时间和硬件时间同步的具体方法的详细内容,更多关于Linux同步系统时间和硬件时间同步的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文