Debian mdadm:未找到conf 文件中列出的设备

Debian mdadm:未找到conf 文件中列出的设备

我的 Debian sid 机器已经从 raid 阵列启动内核 4.13 几个月了,没有出现任何问题。 2天前我升级了平台,现在启动失败,如下所示: 在此输入图像描述

此外,initramfs 提示符不接受任何输入,因此我无法从那里进行调查。

我有一个较旧的内核(4.9 *))仍然可以正常启动。

到目前为止我尝试过这些事情:

  • 使用内核参数“rootdelay=10”
  • 安装了较新的内核(4.19):同样失败
  • 对比4.13和4.9的initram:init脚本有一些变化。将 initramfs-tools 从 132 降级到 130,现在 initram 是相同的(根据提取文件的差异),但 4.13 仍然存在该问题。
  • 提到的 UUID c28..e99 是正确的

您知道如何解决这个问题吗?

*) 我无法使用它,因为编译 NVIDIA 模块失败因为未知的相关搬迁我还不想降级 binutils。

答案1

有一个新的错误至少影响了 Debian sid,测试(如此接近冻结......)(并且还ArchLinux)与 systemd 240 相关,更具体地说,与其 udev 组件相关,可能udevadmudev 240 导致系统无法启动;未找到 rootfs

这个错误导致 udev 没有枚举任何设备/dev:没有磁盘(也许只是 no /dev/disk/,所以没有 UUID 而不是 no /dev/sda?)。可能与没有 USB 枚举相同,因此没有键盘,除非它是 PS/2 端口等,无法真正分辨。

它与内核无关,但升级内核以及引导组件会触发 initramfs 引导部分的重建:对仍在工作的 4.9 内核的 initramfs 文件进行备份,以后它仍然可能会丢失。

恢复到udev(和 libudev1)239-15据说目前可以解决这个问题。确保为所有内核重建 initramfs,而不仅仅是当前内核。

更新:udevsid 中​​的 240-4包括上游修复对于这个问题:

  * sd-device-monitor: Fix ordering of setting buffer size.
    Fixes an issue with uevents not being processed properly during coldplug
    stage and some kernel modules not being loaded via "udevadm trigger".
    (Closes: #917607)

相关内容