本文主要是介绍ubantu16.04和win8.1双系统的时间差问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
为了使用ROS,昨天在电脑上装了ubantu16.04的系统,电脑本身还有win8.1的系统。发现两个系统在时间上出现了差别,ubantu系统显示的是正常时间,win8系统显示的时间明显有问题,用同步Internet时间也不行,后来多重启了几次电脑,时间差终于稳定在了8小时。
在百度上搜寻了一番,得到的结论是,ubantu和windows默认的时间管理方式不同,所以双系统的时间产生了错乱。ubantu和windows系统识别硬件时钟(Haedware Clock)的方式不同,ubantu将硬件时间当作UTC时间,windows将硬件时间当作本地时间Local time。由于时间的处理方式不同,windows不管重启多少次都识别Local time,时间都不会改变,当从ubantu重启到windows时,硬件时钟已经被ubantu认为UTC方式,而windows再将其强制转换成Local time。而我国在东八区(GMT+8),所以得往回退8个小时,就造成了最终8个小时的时差。
网上的解决方法基本上都是以下两种:(1)让ubantu使用本地时间,修改windows的时区,在windows系统上修改注册表。(2)让windows使用本地时间,关闭ubantu的UTC时间,输入指令sudo gedit/etc/default/rcS,把里面的UTC=yes改为UTC=no。
因为我还是以windows作为主系统,不想修改windows,所以一直想采取第二种方法。可能uabntu版本的问题,输入指令后,系统提示输入密码,接着就是找不到指令文件了。之后又碾转到一个论坛里找到另外一个禁用ubantu的UTC的指令:sudo timedatectl set-local-rtc 1,然后重启电脑到windows系统,时间终于改过来了。
这篇关于ubantu16.04和win8.1双系统的时间差问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!