双启动 | windows linux 上同步时间后时间错误

双启动 | windows linux 上同步时间后时间错误

在我同步 Windows 时间后,我的硬件时钟时间很糟糕。

timedatectl 
               Local time: Sun 2023-10-01 15:38:05 CEST
           Universal time: Sun 2023-10-01 13:38:05 UTC
                 RTC time: Sun 2023-10-01 13:38:05
                Time zone: Europe/Budapest (CEST, +0200)
System clock synchronized: no
              NTP service: active
          RTC in local TZ: no
sudo hwclock 
2023-10-01 15:38:47.644031+02:00

世界标准时间实时时钟时间正确,时区正确,但是中欧夏令时时间是错误的。在这种情况下我能做什么?

答案1

UTC 和 RTC 时间正确,时区正确,但 CEST 时间错误。

不!* UTC 时间和 RTC 时间为错误的。我的意思是,现在 UTC 时间不是 13:38,而是 11:38。

所以,事情就是这样:你的 Linux 认为你的 RTC 设置为 UTC 时间(老实说,这是最明智的做法),但它设置为你的本地时间。

     RTC in local TZ: no

应该是,如果您确实打算将 RTC 保留在当地时区(我建议不要这样做,因为突然间你的 RTC 需要每年调整两次以适应夏令时,如果你带着笔记本电脑旅行,甚至什么当地时区? RTC 如何知道您当前所在的位置?为什么要这样关心?)

视窗支持使用 UTC 作为 RTC 时间,所以这就是我要做的。然而,Windows自己的NTP时间同步会用错误的(本地)时间覆盖RTC(而不是将其保留为 UTC),因此您需要禁用 Windows 下的时间同步。

如果您不能这样做,您的另一个选择是通过运行 来让您的 Linux 系统知道 RTC 位于您的本地时区,而不是 UTC timedatectl set-local-rtc 1。同样,缺点是,从本质上讲,RTC 的工作实际上只是跟踪“绝对”时间,当夏令时开始或结束时,或者当您走进不同的时区时,它必须进行跳跃。

轶事时间:假设“欧洲/布达佩斯”意味着你在匈牙利:大约二十年前,我一直在匈牙利度假,当时我几乎走进了一个不同的时区,只是为了被指出也许我应该远离从没有适当文件的边界。这种事发生在我们最好的人身上;我每年都会参加通常在不同时区举行的会议(最近流行病可能影响了这个频率)。

相关内容