Linux Windows双系统下的时间偏移

长期以来,Musubi在可以同时启动Linux和Windows的计算机环境中来回切换OS时,就会出现时钟偏移很大的现象。Windows的时间通常出现-8h的情况(默认情况时区GMT+8)。

原因

查询一些文章了解到,计算机的硬件时钟(RTC)在Linux中以UTC(世界标准时间)运行,而在Windows中RTC在本地时间(CST =北京时间)运行。这是因为每个操作系统都使用NTP调整时间并将其反映在RTC上。

解决

通过Google查询到在以前的Linux版本中,可以通过在/etc/default/rcS中写入 UTC = no 来将RTC设置设置为本地时间,但是从新的版本中开始写入/etc/default/rcS的方法不再存在。

该修复方法在Linux端完成。使用的命令是timedatectl命令。

$ timedatectl status

在显示的信息的最后一行,有一个关于RTC是否在当地时区的声明。之后再运行

$ timedatectl set-local-rtc true

尽管此命令与更改硬件设置有关,但是可以在没有root权限的情况下进行设置。

之后再次确认状态

$ timedatectl status

Leave a Reply

召唤伊斯特瓦尔