hwclock:无法通过任何已知方法访问硬件时钟

hwclock:无法通过任何已知方法访问硬件时钟

在 Debian 服务器上,我遇到以下问题hwclock

$ hwclock --show 
hwclock: Cannot access the Hardware Clock via any known method.
hwclock: Use the --debug option to see the details of our search for an access method.

系统在反向移植的内核上运行Debian 4.9.18-1~bpo8+1 (2017-04-10)

这是调试输出:

$ hwclock --debug
hwclock from util-linux 2.25.2
hwclock: cannot open /dev/rtc: Device or resource busy
No usable clock interface found.
hwclock: Cannot access the Hardware Clock via any known method.

时钟源:

$ cat /sys/devices/system/clocksource/clocksource0/current_clocksource
tsc

最后,rtc设备存在:

$ ls -l /dev/rtc*
lrwxrwxrwx 1 root root      4 Apr 29 16:41 /dev/rtc -> rtc0
crw------- 1 root root 253, 0 Apr 29 16:41 /dev/rtc0

答案1

该问题似乎与有关clocksource,请检查available_clocksource

$ cat /sys/devices/system/clocksource/clocksource0/available_clocksource
tsc hpet acpi_pm

基于回答“clocksource tsc stable 是什么意思?”看起来像TSC(时间戳计数器)不太可靠。

通过更新,/etc/default/grub您可以切换到另一个可用的时钟源。我正在使用高压聚酯

GRUB_CMDLINE_LINUX_DEFAULT="clocksource=hpet"

并更新 grub:

update-grub2

重启后hwclock再次工作(不做任何修改就重启也可能有帮助 - 可能只是时间问题)。

笔记:最佳时钟源可能取决于您的主板和 CPU 型号。

答案2

对我来说,解决方法是在命令前输入“sudo”,因为“无法访问”实际上意味着它没有权限访问 /dev/rtcX。使用 sudo 运行它可以通过赋予它 root 权限来解决这个问题。您的解决方案是运行sudo hwclock --show而不是hwclock --show

答案3

在虚拟机上运行。

su - //afswitch root.run hwclock

相关内容