windows和Ubuntu双系统时间问题怎么处理
windows 和 Ubuntu 双系统时间问题怎么处理
- Windows:默认将硬件时钟视为 本地时间(Local Time)
- Ubuntu/Linux:默认将硬件时钟视为 UTC 时间(协调世界时)
当你从一个系统切换到另一个时,时间就会相差 8 小时(或你所在时区的偏移量)。
推荐方案:让 Windows 使用 UTC(更干净)
这是更现代、更合理的做法,避免 Linux 去迁就 Windows。
在 Windows 中设置 UTC 模式
以管理员身份运行 CMD 或 PowerShell,执行:
1 | reg add "HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /t REG_DWORD /d 1 /f |
然后重启 Windows。
⚠️ 注意:Windows 11 某些版本可能对此支持有问题,如果遇到异常,可以改用下面的方案二。
备选方案:让 Ubuntu 使用本地时间(更兼容)
如果你不想改动 Windows,可以让 Ubuntu 把硬件时钟当作本地时间。
在 Ubuntu 中设置本地时间模式
1 | timedatectl set-local-rtc 1 --adjust-system-clock |
查看状态确认:
1 | timedatectl status |
如果看到 RTC in local TZ: yes 即表示成功。
若要恢复 UTC 模式:
1 | timedatectl set-local-rtc 0 --adjust-system-clock |
额外建议
关闭自动时区同步冲突:确保两个系统都开启了网络时间同步(NTP),这样即使硬件时钟有偏差,也能快速自动校正。
- Windows:设置 → 日期和时间 → 自动设置时间
- Ubuntu:
timedatectl set-ntp true
时区设置正确:两个系统都要设置为你实际所在的时区(如
Asia/Shanghai)。
总结:推荐方案一(改 Windows 用 UTC),因为这是 Linux 世界的标准做法,且不会导致系统间的时间逻辑混乱。如果 Windows 端出现问题,再改用方案二。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 zero blog!