hwclock,与系统时钟不同步

Unt*_*led 8 time

我的硬件时钟总是不同步。我几次将它设置为系统时间,但它一直回到提前 5 小时的状态。

这是正常的吗?会不会惹事?当我的硬件时钟不正常时,我的系统时钟如何正常工作?

fro*_*boo 11

不知道是正常的还是不正常的,因为不知道硬件时钟为什么要发疯。如果是硬件问题,您可以使用软件解决方法,直到您修复它。

hwclock命令应该做你需要的。您可以在终端中以 root 身份使用它,以便从硬件时钟设置系统时钟,或者从系统时钟设置硬件时钟(取决于哪个更可靠):

hwclock --hctosys 或者 hwclock --systohc

hwclock手册页:

   -s, --hctosys
              Set the System Time from the Hardware Clock.

              [...] This  is  a  good  option  to  use  in one of the system startup
              scripts.

       -w, --systohc
              Set the Hardware Clock to the current System Time.
Run Code Online (Sandbox Code Playgroud)


Gob*_*ord 9

根据运行 hwclock 函数时使用的最后一个选项,系统时钟设置为 UTC 或本地。如果你运行:

hwclock -w --localtime
Run Code Online (Sandbox Code Playgroud)

这应该将您的系统时钟写入本地时间而不是 UTC,然后应该设置它并在启动时使用本地时间读取它。如果您手动设置系统时钟并且 hwclock 上次指定为 UTC,则它会自动将其设置回 UTC。

  • 不太确定我是如何被赞成然后被反对的......其他解决方案特别忽略了提到最重要的一点。您必须指定 --localtime 或 --UTC。如果不这样做,它将恢复到最后指定的选项。 (2认同)