Ubuntu 更改了 BIOS 时钟 - 无法与 BIOS 同步时间

Ubuntu 更改了 BIOS 时钟 - 无法与 BIOS 同步时间

我最近安装了 Windows7 版本和 Ubuntu 14.04,发现尽管时区设置正确(太平洋标准时间),但 Ubuntu 中的时钟还是差了几个小时。我在网上搜索答案,并在某处看到取消选择“与互联网时钟同步”可能会解决这个问题。这似乎确实在短期内解决了这个问题,但经过几次更新后,我再次注意到我的系统时钟快了 7 个小时。查看 BIOS 后,我发现那里的时钟正在重置。

引起我注意的是,UBuntu 中的 f.Lux 无法在正确的时间打开,因此我去检查了 BIOS 中的时间,发现时间快了 7 个小时。这解释了一些事情,我怀疑可能是电池的问题,但发生了一些奇怪的事情,告诉我情况并非如此。

如果我进入 BIOS 并将时钟设置为正确的时间,然后加载到 Windows,一切都会保持正常。我可以将系统重新启动到 Windows,BIOS 或 Windows 时间没有任何变化。如果我通过 Windows 引导加载程序登录 Ubuntu,Ubuntu 时钟中的时间会更改为落后 7 小时。如果我再次重新启动 Ubuntu,Ubuntu 时钟仍然关闭,BIOS 时钟正常。时钟更改 BIOS 的唯一时间是我更改 UBuntu 时钟中的时间(通过选择手动或互联网同步)。

奇怪的是,在修改 BIOS 的时间后,Ubuntu 中的时钟会显示正确的时间,看起来是正确的。如果我修复了 BIOS 中的时间,直接登录 ubuntu wia windows bootloader,Ubuntu 时钟就会关闭。

这几乎就像 Ubuntu 无法正确读取 BIOS 时钟或与其同步一样。

运行 Windows7 64 位和 Ubuntu 14.04 64 位

答案1

找到解决方案了!我读到这里那:

“操作系统会将时间存储并检索到主板上的硬件时钟中,这样即使系统没有电源,它也能跟踪时间。大多数操作系统 (Linux/Unix/Mac) 默认将硬件时钟上的时间存储为 UTC,但有些系统 (尤其是 Microsoft Windows) 将硬件时钟上的时间存储为‘本地’时间。如果两个系统对硬件时钟的看法不同,这会导致双启动系统出现问题”

通过使 Linux 使用“本地”时间来解决此问题的步骤如下:

gksudo gedit /etc/default/rcS

添加或更改以下部分

# Set UTC=yes if your hardware clock is set to UTC (GMT) UTC=no

答案2

我的理解可能已经过时了,但上次我检查时,Linux 假定 BIOS 时钟是 UTC(默认),而 Windows 假定它设置为您的本地时间。

如果您想告诉 Ubuntu 使用本地时间,这可能会解决启动 Windows 后的问题,您需要编辑/etc/default/rcS

# Set UTC=yes if your hardware clock is set to UTC (GMT)
UTC=no

另一种方法是告诉 Windows 你的硬件时钟是 UTC,但我不清楚你该如何操作。

您可以通过阅读以下内容了解更多信息这个类似的问题

相关内容