Linux 与 Windows 双系统时间同步问题

问题根因

因为 Windows 和 Linux 对系统时间的处理方式不同

  • Linux 将硬件时钟(BIOS/UEFI时钟)设置为 UTC(格林尼治标准时间),再根据时区换算显示
  • Windows 将硬件时钟设置为本地时间

所以一换系统,Windows 一看主板时间“哦现在是 UTC 下午 2 点”,心想那就是我本地下午 2 点——结果你明明在东八区,直接给你倒退回早上 6 点,完美错开 8 小时。

解决方法

方案一:将Windows配置为使用UTC时间(推荐)

让 Windows 也学会把主板时间当 UTC 看。

  1. Win + R,输入 regedit 打开注册表
  2. 地址栏粘贴这串路径HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
  3. 右边空白处右键 → 新建 → DWORD(32位)值,命名为 RealTimeIsUniversal
  4. 双击它,数值数据改成 1,确定
  5. 重启,完事

方案二:将Linux配置为使用本地时间

  1. 打开Ubuntu终端。
  2. 运行以下命令将硬件时钟设置为本地时间:
    timedatectl set-local-rtc 1 --adjust-system-clock
    
  3. 通过运行以下命令来验证更改:
    timedatectl
    
    你应该会看到类似 RTC in local TZ: yes 的输出。

额外提醒⚠️ Windows 的“快速启动”有时会捣乱,建议去电源设置里把它关掉,省得时间又抽风

posted @ 2026-08-18 16:20  JosiahBristow  阅读(1)  评论(0)    收藏  举报