数据结构论坛

首页 » 分类 » 常识 » 修复Windows和Linux在双启动时
TUhjnbcbe - 2023/8/3 20:09:00


  如果您的系统双启动Windows和Linux,您可能会注意到不可能让系统时钟同步。不管你如何改变一个操作系统的时钟,它都不能解决其他操作系统的问题。这是因为Windows和Unix操作系统之间的时间保持方法不一致。幸运的是,有一个相对简单的解决方案。


  为什么会这样?
  您的计算机将当前时间存储在主板上的时钟上。这使得计算机可以在关闭的情况下记录时间。为了计算时区,不同的操作系统使用不同的方法。Windows假定本地时间存储在主板中,因此它不应用任何类型的时区偏移。另一方面,Linux将把主板上的时间解释为UTC(又名格林尼治标准时间),并应用一个时区偏移来显示本地时间。
  这两个系统都独立完美地工作。当您双启动一个系统,在同一主板上运行Windows和Linux时,就会出现这个问题。当操作系统被迫共享时间存储时,时钟不会同步。
  有两种不同的方法可以解决这个问题:我们可以改变Linux解释存储时间的方式,或者对Windows进行相同的操作。
  选项1:让Linux使用本地时间
  让Linux和Windows在时间上达成一致的最可靠的方法是改变Linux的时间保存方法。虽然这不是明确的支持,但它比在Windows中做同样的事情要可靠得多。它适用于任何使用systemd的Linux风格,包括Ubuntu、Fedora、RedHat、Debian和Mint。更改Windows的时间通常也很正常,但有时会导致第三方软件不稳定,而第三方软件则希望存储的时间是本地时间。
  1.打开终端并运行以下命令:
  timedatectlset-local-rtc1--adjust-system-clock
  


  这会告诉系统将本机的存储时间解释为当地时间。Linux将不再将时区调整应用于存储在主板上的时间。结果,你的时钟将同步。
  如果您需要反转命令,请将1更改为0:
  timedatectlset-local-rtc0--adjust-system-clock
  选项2:让Windows使用UTC
  您还可以更改Windows查看系统时间的方式。这种调整将导致Windows将主板上存储的时间解释为UTC,然后Linux可以将其解释为正确的时区。虽然这一般运作良好,但一些应用程序依靠主板时间本地时间。因此,有时会出现难以追踪的错误。这使得这个选项比第一个稍微不合适。
  1.在“设置”应用程序的“时间和语言”下禁用“自动设置时间”。这将阻止Windows恢复我们即将做出的更改。
  


  2.通过在开始菜单中键入regedit打开注册表编辑器。
  


  3.在注册表编辑器的左窗格中找到以下注册表项。要快速到达,请将位置粘贴到注册表编辑器的地址栏中:
  HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation
  


  4.右键单击左窗格中的“TimeZoneInformation”键,然后从上下文菜单中选择“New-DWORD(32-bit)Value”。
  


  5.将您的新值命名为“RealTimeIsUniversal”。
  


  6.双击刚刚创建的值,将其值设置为“1”,然后单击“确定”。
  


  结论
  在双引导系统上同步系统时钟最安全的方法是调整Linux对时间的解释。如果这对您不适用(或者如果您使用的是macOS而不是Linux),您还可以编辑Windows注册表来更改Windows理解主板时间的方式。


  更多阅读


  课课家教育_数据结构及算法年软考精品培训系列课程视频教程


  软考网络工程师备考篇(一):考前准备


  如何申请成为课课家教育讲师

1
查看完整版本: 修复Windows和Linux在双启动时