Supermicro 主板包含一个名为“看门狗功能”的 BIOS 功能。有了带有内核“Linux debian 2.6.32-5-amd64 #1 SMP”的 Debian 6.0.6,我们做了:
- 将 BIOS“看门狗功能”从禁用更改为启用。
- 安装看门狗包 (
# apt-get install watchdog
)
预期:这就是正确安装看门狗功能的全部内容。
结果:系统每(大约)5 分钟重新启动一次。
改变BIOS”看门狗功能”从启用到禁用修复了意外的重新启动。
启动过程似乎正确启用了看门狗守护程序。至少控制台显示(禁用 BIOS 看门狗时):
Starting watchdog keepalive daemon: wd_keepalive.
Stopping watchdog keepalive daemon....
Starting watchdog daemon....
重新启动时会生成以下输出:
INIT: SUsing makefile-style concurrent boot in runlevel 6.
Stopping watchdog daemon....
Starting watchdog keepalive daemon....
还需要做什么才能配置 BIOS 看门狗功能和 Linux 操作系统看门狗守护进程正确协同工作?
答案1
1. 加载硬件模块
首先,为了真正“喂养”看门狗,您需要加载看门狗硬件模块。这可能不会自动发生,因为如果没有看门狗守护程序(例如在/etc/modprobe.d/blacklist-watchdog.conf
Ubuntu/Debian 系统上),大多数看门狗驱动程序都会被列入黑名单。检查是否/dev/watchdog
(或类似的)出现,因为这意味着模块已被加载。
我不知道 Supermicro 主板使用什么,但可能是 Intel TCO 驱动程序 ( iTCO_wdt
)。请注意,iTCO_wdt
可能需要一些其他模块(例如i2c-i801
, )i2c-smbus
才能发挥其魔力。尝试使用modprobe iTCO_wdt
加载该模块并查看它是否被接受。
成功看起来像:
iTCO_wdt: Found a Intel PCH TCO device (Version=4, TCOBASE=0x0400)
iTCO_wdt: initialized. heartbeat=120 sec (nowayout=0)
失败后没有显示任何内容:
iTCO_wdt: Intel TCO WatchDog Timer Driver v1.11
另请检查系统日志。否则请检查 IPMI 工具,因为它们包含看门狗驱动程序。
2. 编辑/etc/watchdog.conf
其次,您需要编辑看门狗配置文件,例如# nano /etc/watchdog.conf
.
3.取消评论watchdog-device = ...
所以实际使用/dev/watchdog
设备访问模块。否则,看门狗将不会使用硬件,而仅依靠其内部代码来软重启损坏的机器(这不是很有用)。
同样,在启动看门狗守护程序时,请在系统日志中查找有关其启动以及已找到的硬件模块的消息。