为什么hwclock既不是UTC也不是本地的?

$ timedatectl Local time: Fri 2015-01-30 11:04:51 CET correct UTC+1 Universal time: Fri 2015-01-30 10:04:51 UTC correct UTC Timezone: Europe/Budapest (CET, +0100) correct NTP enabled: n/a NTP synchronized: no RTC in local TZ: no ? UTC then ? DST active: no Last DST change: DST ended at Sun 2014-10-26 02:59:59 CEST Sun 2014-10-26 02:00:00 CET Next DST change: DST begins (the clock jumps one hour forward) at Sun 2015-03-29 01:59:59 CET Sun 2015-03-29 03:00:00 CEST $ sudo hwclock Fri Jan 30 12:05:09 2015 -0.406771 seconds ??????? UTC+2 ?????? $ date Fri Jan 30 11:08:30 CET 2015 correct 

hwclock的文档说它总是显示本地时间,无论RTC是根据本地时间还是通用时间设置的。

什么可能导致hwclock以当地时间显示UTC + 2?

我原本以为hwclock“相信”RTC根据UTC设置,因此它显示+1,因为我在中欧,但RTC实际上是在当地时间(已经+1)因此它消失了+ 1 + 1 = + 2。 但是上面的timedatectl “说”RTC不是本地的。 那么发生了什么?

更新:

 $ sudo hwclock --debug hwclock from util-linux 2.20.1 Using /dev interface to clock. Assuming hardware clock is kept in UTC time. Waiting for clock tick... ...got clock tick Time read from Hardware Clock: 2015/01/30 11:38:38 Hw clock time : 2015/01/30 11:38:38 = 1422617918 seconds since 1969 Fri Jan 30 12:38:38 2015 -0.516275 seconds 

所以它“认为”RTC是UTC但实际上是本地的。 因此timedatectl是罪魁祸首?

  1. 转到BIOS并将BIOS时钟设置为UTC并在那里正确设置时间!
  2. 在Windows中,将HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal"dword:00000001
  3. 仍在Windows中,转到控制面板,添加/删除Sftware,更改Windows设置,添加Windows时间服务器。
  4. 在Ubuntu中, sudo nano /etc/default/rcS Ctrl + W UTC=如果值为nosudo nano /etc/default/rcS改为yes
  5. 仍然在Ubuntu 按照官方说明安装ntp
  6. sudo reboot

问题消失了!

为何选择Windows? 好吧,如果您的设置已关闭,我推断您必须是双启动和Windows搞乱的事情! Szívesen! 😉