当我重新启动时,通常会收到以下错误消息:
kernel: watchdog watchdog0: watchdog did not stop!
我试图通过做来了解有关看门狗的更多信息man watchdog
,但是它说没有手动输入。我尝试过yum list watchdog
发现它没有安装。但是,当我查看/dev
目录时,实际上发现了两个看门狗:
watchdog
和 watchdog0
我好奇。我实际上拥有任何看门狗吗?为什么内核在重启时抱怨它没有停止?
大多数现代PC硬件都包含看门狗定时器功能。您可以在此处通过Wikipedia阅读更多关于它们的内容:看门狗计时器。同样来自Linux内核文档:
摘录-https: //www.kernel.org/doc/Documentation/watchdog/watchdog-api.txt
看门狗定时器(WDT)是一种硬件电路,在发生软件故障时可以重置计算机系统。您可能已经知道了。
通常,用户空间守护程序会通过/ dev / watchdog特殊设备文件定期通知内核看门狗驱动程序该用户空间仍然存在。发生此类通知时,驱动程序通常会告知硬件看门狗一切正常,看门狗应再等一会儿才能重置系统。如果用户空间发生故障(RAM错误,内核错误等),则通知将不再发生,并且硬件看门狗将在发生超时后重置系统(导致重新引导)。
Linux看门狗API是一个非常特殊的结构,不同的驱动程序实现了其中的不同部分,有时甚至是不兼容的部分。此文件是试图记录现有用法并允许将来的驱动程序编写者将其用作参考。
标题为“谁在刷新Linux中的硬件监视程序”的SO Q&A 。,涵盖Linux内核与硬件监视程序计时器之间的链接。
RPM中的描述使这一点非常清楚,IMO。该watchdog
守护进程可以作为一个软件看门狗或者可以与硬件实现交互。
看门狗程序可以用作功能强大的软件看门狗守护程序,也可以与硬件看门狗设备(例如与驻留的基板管理控制器(BMC)的IPMI硬件看门狗驱动程序接口)交替使用。看门狗会定期写入/ dev / watchdog;可以通过看门狗sysconfig文件中的设置来配置写入/ dev / watchdog之间的时间间隔。
此配置文件还用于将看门狗设置为硬件看门狗,而不是其默认软件看门狗操作。在这两种情况下,如果设备处于打开状态但未在配置的时间段内写入设备,则看门狗定时器到期将触发计算机重新启动。作为软件看门狗运行时,重新启动的能力将取决于计算机的状态和中断。
当作为硬件监视程序运行时,计算机将经历由BMC启动的硬重置(或配置为在监视程序计时器到期时执行的任何操作)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句