运行 rhel 8.8 时,系统突然无法正常重启。控制台显示消息
a stop job is running for /dev/mapper/name (xxxs / no limit)
此设备是一个作为非根磁盘安装的 luks 容器。磁盘使用 nbde clevis + tang 自动解密。这很完美。重新启动时,服务器会挂起上面的消息。
我尝试向 fstab 和 crypttab 添加选项 x-systemd.mount-timeout=90s,设备在启动时正确映射,但即使经过多次重启和随后的重置后也没有超时限制。
该设备是 kvm vms 的数据存储。如果我手动关闭 vms,并在安装该设备的位置运行 systemd-umount /var/lib/libvirt/images,则后续重新启动可以完美运行。
有什么办法可以解决这个问题吗?我该如何为这项工作添加限制?
答案1
当我等待红帽的官方答复时,我发现了一个可行的情况:
systemctl edit reboot.target
修改 JobTimeoutSec=30min 以达到您所需的超时时间。重新加载 systemd 并重新启动。这暂时解决了这个问题。
事实证明这个错误是众所周知的:https://bugzilla.redhat.com/show_bug.cgi?id=2220954。修复方法是降级 systemd(bugzilla 上的版本)。真正的解决方案将等待 redhat 的修复。因此,在此期间,如果您遇到此问题,请覆盖重启目标或降级 systemd,直到 red hat 修复此问题。