一、前言
- 一些小伙伴因为种种原因需要安装Windows和Linux某一发行版的双系统,处理时间不一致问题成为了安装后完善的首要,本文将从一些基本的概念入手,一步步告诉你如何调整。
二、一些概念
- 时钟的概念
- 系统时钟(System Clock):顾名思义,软件系统的时钟,系统时钟是与硬件时钟相互独立的概念。不同的操作系统有着不同的时间管理方法,但都是以硬件时钟为基础的,例如Windows默认使用的localtime以及UNIX以及一些UNIX Like大多使用的UTC。
- 硬件时钟(Real Time Clock,简称RTC时钟):主板上的硬件时钟,由电池向主板供电维持,可以在BIOS(Basic Input Output System,基本输入输出系统)中调整。
- 时间的标准
- 时间有两个标准:localtime和UTC(Coordinated Universal Time)
- localtime 标准依赖于当前时区,Windows默认使用。
- UTC(Coordinated Universal Time)与时区无关的全球标准时间,与GMT(格林尼治时间)一致。一些Linux的发行版默认使用。
三、解决办法
- 以manjaro与Windows10双系统时间不一致为例详细讲解如何进行操作。
从Linux入手,优雅的使用终端将默认使用的UTC调整为localtime,将硬件时间设置为localtime。
$ sudo timedatectl set-local-rtc true
拿Windows开刀,暴力修改注册表将默认使用的localtime修改为UTC
1)按下Windows键+R键在弹出的运行命令窗口中输入
regedit
回车,找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\
并新建DWORD键值RealTimeIsUniversal
,然后设置为1,完成。
或者在按下Windows键+R键在弹出的运行命令窗口中输入如下内容:reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
- 2)操作完成后在Windows操作与Internet时间同步或者在Linux终端下使用
sudo ntpdate time.pool.aliyun.com
与网络时间同步,如果时间存在偏移问题使用Linux命令sudo timedatectl set-timezone Asia/Beijing
修改为正确的时区,之后与网络时间同步。
不管使用哪一种方法进行进行调整,建议在完成后对时间进行更新,并将系统时间写入CMOS,在Linux终端下运行。
$ sudo ntpdate time.pool.aliyun.com
$ sudo hwclock --systohc
- 至此时间不一致问题已经解决。
三、推荐阅读
四、参考文章
本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议进行许可。
写一篇双系统教程吧,感觉引导是个问题。我只弄过子系统是Ubuntu。Win10下有什么好的办法?
可以的,我抽时间写一篇,如果细说的话可能会涉及到好多东西,我会多写一些原理性的东西,win10下双系统挺容易折腾的,感谢你的建议。