关机时我经常收到这样的消息
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] 导致挂在
看门狗并没有停止
以上都不适合我,但幸运的是,它们的组合完成了这项工作:
使用
GRUB_CMDLINE_LINUX="reboot=bios"
(reboot=acpi
对我不起作用)使用
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 配置进行测试要快一点。一旦您找到适合您的方法,您仍然需要这样做才能使其永久化。