您的计算机将时间存储在其主板上的硬件时钟中。时钟会跟踪时间,即使在计算机关闭时也是如此。默认情况下,windows 假定时间以本地时间存储,而 linux 假定时间以 utc 时间存储并应用偏移量。这会导致您的操作系统之一在双启动情况下显示错误的时间。
要解决此问题,您有两个选择:让 linux 使用本地时间,或让 windows 使用 utc 时间。不要遵循说明的两个步骤,否则他们仍然不会说同一种语言!如果可能,我们建议您让 linux 使用本地时间。
让 linux 使用本地时间来修复时间差异
让 linux 像 windows 一样使用本地时间可能是最好的选择。windows 确实有一个注册表设置,强制它将时间存储为 utc,但据报道它没有得到很好的支持,并且可能会导致某些第三方应用程序出现问题,这些应用程序始终假定硬件时钟为本地时间。它也与windows自己的互联网时间同步服务不兼容。
使 linux 系统使用本地时间的步骤可能因 linux 发行版而异。但是,在任何带有 systemd 的 linux 发行版上,您可以使用该命令进行此更改。这将适用于现代版本的ubuntu,fedora,red hat,debian,mint和其他使用systemd的linux发行版。timedatectl
要进行此更改,请首先在 linux 系统上打开终端窗口。运行以下命令,将主板上的实时时钟放入本地时间。linux 将以本地时间存储时间,就像 windows 一样。
timedatectl set-local-rtc 1 --adjust-system-clock
执行命令后,您将不会收到任何反馈。要检查当前设置,请运行:
timedatectl
如果您看到“本地 tz 中的 rtc:是”,则 linux 设置为使用本地时区而不是 utc。该命令警告您,此模式不完全受支持,并且在时区之间更改和夏令时时可能会导致一些问题。但是,此模式可能比 windows 中的 utc 选项得到更好的支持。如果您使用 windows 进行双启动,windows 将为您处理夏令时。
如果要撤消此更改,请运行以下命令:
timedatectl set-local-rtc 0 --adjust-system-clock
使 windows 使用 utc 时间来修复时间错误
让windows像linux一样使用utc时间可能不是最好的选择。您可以编辑注册表以使 windows 使用 utc 时间,但这可能会导致比仅使 linux 使用本地时间更多的问题。
如果您确实要执行此操作,则首先要禁用windows上的internet时间更新功能。这可确保 windows 在尝试从 internet 同步当前时间时不会错误地设置时钟。在windows 10上,前往“时间和语言设置”>并禁用“自动设置时间”。在 windows 7 上,右键单击任务栏中的系统时钟,然后选择“调整日期/时间”。单击“互联网时间”选项卡,单击“更改设置”按钮,取消选中“与互联网时间服务器同步”选项,然后单击“确定”。
通过编辑注册表使 windows 使用 utc 时间
现在,您需要将适当的值添加到 windows 注册表中。以下是我们的标准警告:注册表编辑器是一个功能强大的工具,滥用它可能会导致您的系统不稳定甚至无法运行。这是一个非常简单的黑客,只要您按照说明进行操作,就不会有任何问题。也就是说,如果您以前从未使用过它,请考虑在开始之前阅读有关如何使用注册表编辑器的信息。在进行更改之前,一定要备份注册表(和您的计算机!
首先,通过单击“开始”,键入“regedit”,然后按 enter 打开注册表编辑器。 同意出现的安全提示。
导航到注册表编辑器左窗格中的以下项:
hkey_local_machine\system\currentcontrolset\control\timezoneinformation
在 windows 10 和 windows 11 上,您可以将上述行复制并粘贴到地址框中。但是,此黑客也适用于旧版本的windows。
右键单击“时区信息”键,然后选择“新建> dword(32 位)值”。
将新值命名为 。realtimeisuniversal
双击刚刚创建的值,将值数据设置为 ,然后单击“确定”。realtimeisuniversal
1
您现在已完成,您可以关闭注册表编辑器。windows将以utc格式存储时间,就像linux一样。
如果要撤消此更改,请返回到注册表中的此位置,右键单击添加的值,然后将其从注册表中删除。realtimeisuniversal
下载我们的一键式注册表黑客以更改为utc
如果您不想自己编辑注册表,可以使用我们可下载的注册表黑客。我们创建了一个使windows使用utc时间的黑客,以及一个将其恢复到本地时间的黑客。两者都包含在以下 zip 文件中。只需下载文件,双击要使用的黑客,并同意将信息添加到注册表中。
使窗口使用 utc 时间
上述黑客与我们上面描述的相同。make windows use utc time hack 创建值为“1”的“realtimeisuniversal”条目,而 make windows use local time hack 删除“realtimeisuniversal”条目。
如果您想查看此文件或任何其他 .reg 文件的作用,请右键单击它并选择“编辑”以在记事本中查看该文件。您可以轻松制作自己的注册表黑客,其中仅包含要在格式正确的列表中添加、编辑和删除的注册表项列表。
mac上的双启动windows怎么样?
尽管apple的macos像linux一样使用utc时间,但在mac上的boot camp中运行windows时,您不必做任何特殊的事情。apple的boot camp驱动程序可以处理所有事情。(不过,hackintosh双引导程序是另一回事,必须尝试使用上面的windows注册表调整。
为什么 windows 使用本地时间而不是 utc?
简而言之,这是为了保持与windows 3.1系统的向后兼容性,并防止人们在计算机的bios中设置时间时感到困惑。当然,pc制造商选择本地时间与windows兼容,windows选择本地时间与pc制造商选择的决定兼容,因此循环变得自我强化。
目前没有标准来标记时间是存储在 bios 还是 uefi 固件中的本地时间,这可能是最合乎逻辑的凯发k8ag旗舰厅的解决方案。但这需要一些工作,大多数人甚至不会注意到不同的操作系统使用不同的时间格式——除了双启动配置。
未经允许不得转载:凯发k8ag旗舰厅 » 如何修复 windows 和 linux 在双启动时显示不同的时间