我首先在 Acer Aspire 4930 上安装了 Linux Mint,然后与 Windows 7 进行双启动。
我总是在 Linux Mint 上看到正确的时间,但在启动到 Windows 时,时间会向后移动几个小时,即使在重置时间后,重新启动时也会再次显示错误的时间。
问题:
为什么会发生这种情况?
我能做什么呢?
答案1
在 Windows 上,系统 RTC 时钟传统上保持本地时间。在 Unix 和 Linux 中,它传统上保存为 UTC,/etc/localtime
用于指示当前时区,以便显示的时间是正确的。
这两种世界观在双启动配置中发生冲突,因为只有一个 RTC。通常,您告诉 Linux 假设 RTC 是本地时间(因为 Windows 无法得知)。这因 Linux 的不同而有所不同,但由于 Mint 就像 Ubuntu,你可以UTC=no
在/etc/default/rcS
.然后你可以在 Windows 中将时钟设置为本地时间,Linux 之后将不理会它。
编者注:
自 Linux Mint 19 以来(或者更准确地说自 Ubuntu 18.04 基础以来),该文件就不存在:
/etc/default/rcS
答案2
Mint 18.2 KDE 似乎不受其他修复的影响(包括我在搜索中发现的其他修复)。中提到的文件艾科利的和错误404的答案要么不再存在,要么似乎不再是引用设置的地方,至少在当前的 KDE 版本中是这样。命令在朱莉·佩尔蒂埃的回答适用于 18.2 Cinnamon,但不适用于 18.2 KDE。
在尝试了六种建议的解决方案后,以下解决方案针对 18.2 KDE 进行了修复。显示正确的时间后,运行以下终端命令:
timedatectl set-local-rtc 1 --adjust-system-clock
来源:Linux Mint 安装后的提示和技巧 [Mint 18 - Cinnamon 版]
这也应该适用于 Cinnamon 作为替代解决方案,并且我假设其他 DE 也是如此。
编者注:
不需要
sudo
,以您的用户身份运行该命令。它确实在重新启动后持续存在,应该是永久性的。
在基于 Ubuntu 18.04 的 Linux Mint 19.1 Cinnamon 上进行了测试。
答案3
最通用的方法是:
hwclock --systohc --localtime
它在重新启动后仍然存在,并且适用于大多数系统。
答案4
将(作为根)/etc/timeadj
变量从UTC
修改为LOCAL
。
这解决了问题,而无需在 Windows 端摆弄 regedit。