mikicomo
V2EX  ›  问与答

win/linux 双系统时差问题

  •  
  •   mikicomo · Jun 20, 2016 · 2350 views
    This topic created in 3795 days ago, the information mentioned may be changed or developed.

    win8.1/Ubuntu 16.04 双系统时差问题,根据网上的解决方案:

    将 /etc/default/rcS 里的 UTC=yes 置为 UTC=no
    

    可是并没有什么效果,求助 V 友。

    6 replies  •  2016-06-20 20:19:05 +08:00
    Testalias
    Testalias
    Jun 20, 2016 via iPhone
    1
    这个问题在于两个系统的硬件时间解读不同, Linux 对于 BIOS 中的时间解读为 UTC ,然后根据系统设定的时区做加法+8 ; Windows 默认情况下将硬件时间设定为 localtime ,也就是已经计算过时区了,在跟 ntp 同步后将 localtime 写入 BIOS (这是历史遗留问题),所以双系统就会有 8 小时偏差,通常做法是在 win 的注册表中将 localtime 改为 utc ,设定 TimeIsUniversal 为 1 ,具体位置自己搜,再回到 Linux 同步好时间就行了。
    kkxxxxxxx
    kkxxxxxxx
    Jun 20, 2016
    2
    同烦恼
    Testalias
    Testalias
    Jun 20, 2016 via iPhone
    3
    我上面描述的不准确,具体的关于系统与硬件的四个时间可以参考 Arch 的 Wiki 。
    Testalias
    Testalias
    Jun 20, 2016 via iPhone
    4
    不要将 Linux 的时间设定为 localtime ,也就是你问题中的设定方式是埋雷的做法,统一成 UTC 很方便
    mikicomo
    mikicomo
    OP
    Jun 20, 2016
    5
    @Testalias 谢谢指导,我试试
    Testalias
    Testalias
    Jun 20, 2016❤️2
    6
    手机打错了
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]

    "RealTimeIsUniversal"=dword:00000001


    https://wiki.archlinux.org/index.php/Time#Time_skew

    看这个就够了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2335 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 13:19 · PVG 21:19 · LAX 05:19 · JFK 08:19
    ♥ Do have faith in what you're doing.