装了archlinux,发现启动时间不太对,过一会儿通过ntp网络对时又会变正确。

毫无疑问这肯定跟UTC时间相关。

UTC: 协调世界时,又称世界统一时间,世界标准时间,国际协调时间,简称UTC。它从英文“Coordinated Universal Time”/法文“Temps Universel Cordonné”而来。

可以通过hwclock命令来设置硬件时间

hwclock命令包含在包

/sbin/hwclock 属于 util-linux 2.22.1-2

需要root权限来运行

常用命令

hwclock -r 读取当前硬件时钟

hwclock --utc 设置硬件时钟用utc时间表示

hwclock --localtime 设置硬件时钟用本地时间表示,注意本地时间是跟时区相关的,保证/etc/localtime文件链接至正确的时区文件

hwclock -w 写入硬件时钟

hwclock --set --date="时间字串" 设置系统时间,例:hwclock --set --date="2011-08-14 16:45:05"

hwclock --adjust 校准硬件时钟 ,会根据/etc/adjtime文件来校准时钟,如果没有该文件则会生成该文件


所以先

hwclock --adjust

生成/etc/adjtime文件,如果有该文件则不用执行上面的命令

编辑该文件第三行,如果不是LOCAL而是UTC,则改为LOCAL

使硬件时间用本地时间

然后

hwclock -w

写入当前系统时间,也就是正确的本地时间到硬件时间


Logo

更多推荐