Linux

dmesg 時間與系統時間時間不正確

  • November 12, 2021

我希望有人可以幫助我解決這個奇怪的問題。

我想我知道它為什麼會發生,但我不知道如何解決它。也許是因為 BIOS 時間設置不正確或類似的原因。但我不想更改大約 400 多台伺服器的 BIOS 時間。(或更改BIOS batt)

root@spool:~# echo TEST > /dev/kmsg
root@spool:~# dmesg -T | tail -1
[Mon Feb 17 04:57:03 2014] TEST
root@spool:~# date
Mon Feb 17 11:45:17 CET 2014

伺服器正在執行 ntp 以進行時間同步。

這裡有人知道如何在作業系統中解決這個問題嗎?

Linux spool 3.2.0-4-amd64 #1 SMP Debian 3.2.46-1+deb7u1 x86_64 GNU/Linux

為什麼在回顯到/dev/kmsg時,我的消息的dmesg日期/時間與系統日期/時間不同步?

要驗證您的理論(順便說一句,它是合理的),請以 root 身份執行以下命令:

hwclock --show

這將顯示您正在執行命令的伺服器上的硬體時鐘。

要將硬體時鐘與系統時間(由 ntp 管理)同步,請執行以下命令:

hwclock --systohc --utc

最後一個參數 (–utc) 告訴 hwclock 將時間儲存在協調通用時間的硬體時鐘中。

此外,請記住 dmesg(1) 的手冊頁說明了以下內容,因此您遇到的行為已記錄在案且有效:

  -T, --ctime
         Print human-readable timestamps.

         Be aware that the timestamp could be inaccurate!  The time
         source used for the logs is not updated after system
         SUSPEND/RESUME.

引用自:https://serverfault.com/questions/576139