![hwclock:无法通过任何已知方法访问硬件时钟](https://linux22.com/image/704835/hwclock%EF%BC%9A%E6%97%A0%E6%B3%95%E9%80%9A%E8%BF%87%E4%BB%BB%E4%BD%95%E5%B7%B2%E7%9F%A5%E6%96%B9%E6%B3%95%E8%AE%BF%E9%97%AE%E7%A1%AC%E4%BB%B6%E6%97%B6%E9%92%9F.png)
在 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