关闭时的消息:看门狗没有停止!

关闭时的消息:看门狗没有停止!

关机时我经常收到这样的消息

watchdog did not stop!

然后笔记本电脑在几行其他线路后冻结而没有关闭。

知道如何解决这个问题吗?最近经常出现这种情况,通常是笔记本电脑开机一段时间后出现的。

我在华硕 UX32LA 上使用 Debian 8

我找到了这个 systemd 文件(它显示与 shutdown.target 的冲突),如果它有帮助的话。我的印象是,问题取决于我尝试修复背光的一些问题(实际上仅适用于 grub 参数 "acpi_osi=" )

[Unit]
Description=Load/Save Screen Backlight Brightness of %i
Documentation=man:[email protected](8)
DefaultDependencies=no
RequiresMountsFor=/var/lib/systemd/backlight
Conflicts=shutdown.target  
After=systemd-readahead-collect.service systemd-readahead-replay.service     systemd-remount-fs.service
Before=sysinit.target shutdown.target

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/lib/systemd/systemd-backlight load %i
ExecStop=/lib/systemd/systemd-backlight save %i

答案1

watchdog did not stop!线路是正常行为。systemd设置一个“硬件看门狗“计时器作为故障保护,确保如果正常关机过程冻结/失败,计算机在指定的时间段后仍然会关机。这个时间段是在ShutdownWatchdogSec=文件中的变量中定义的/etc/systemd/system.conf。这里是来自的描述文档:

RuntimeWatchdogSec=、ShutdownWatchdogSec=

在运行时和重新启动时配置硬件看门狗。采用以秒为单位的超时值(如果后缀为“ms”、“min”、“h”、“d”、“w”,则采用其他时间单位)。如果 RuntimeWatchdogSec= 设置为非零值,则看门狗硬件 (/dev/watchdog) 将被编程为在指定的超时间隔内未联系到系统时自动重新启动系统。系统管理员将确保在指定的超时间隔的一半内至少与其联系一次。此功能需要存在硬件看门狗设备,这在嵌入式和服务器系统中很常见。并非所有硬件看门狗都允许配置重新启动超时,在这种情况下,会选择最接近的可用超时。 ShutdownWatchdogSec= 可用于在系统被要求重新启动时配置硬件看门狗。它充当安全网,确保即使干净重新启动尝试超时也能进行重新启动。默认情况下,RuntimeWatchdogSec= 默认为 0(关闭),ShutdownWatchdogSec= 默认为 10 分钟。如果硬件看门狗不可用,这些设置不起作用。

正如您所指出的,您的实际问题可能与更改 ACPI 设置有关。答案关于这个 Debian 论坛主题建议如下:

1)编辑文件/etc/default/grub 并编辑该 GRUB_CMDLINE_LINUX行,如下所示: GRUB_CMDLINE_LINUX="reboot=bios"

2)运行:update-grub

如果reboot=bios不起作用,他们建议重试reboot=acpi

这些对你有用吗?

答案2

我在 MIO 单板计算机上遇到同样的问题:sudo reboot或 [CTRL]+[ALT]+[DEL] 导致挂在

看门狗并没有停止

以上都不适合我,但幸运的是,它们的组合完成了这项工作:

  1. 使用GRUB_CMDLINE_LINUX="reboot=bios"reboot=acpi对我不起作用)

  2. 使用systemctl reboot -i, 成功重启系统。 (关联

答案3

我遇到了同样的问题,但是看门狗不是问题本身。结果是通过设置来修复use_lvmetad = 0/etc/lvm/lvm.conf。无论如何,可能是不同的服务。

如果此后您遇到较长的启动时间,请运行systemd-analyze blame.就我而言,我发现这systemd-udev-settle.service导致了严重的延迟,可以通过运行来缓解systemctl mask systemd-udev-settle

答案4

我想对 J. Taylor 的帖子发表评论,但我缺乏声誉。如果您想尝试不同的模式(BIOS/ACPI 等),您可以在系统启动时编辑 linux 行。就在 root= 部分之前,我刚刚在安装了 debian 12 的旧 Dell T110 II 系统上添加了reboot=bios,然后常规重新启动命令就起作用了。它只是比使用 grub 配置进行测试要快一点。一旦您找到适合您的方法,您仍然需要这样做才能使其永久化。

相关内容