Debian Jessie 挂在启动上

Debian Jessie 挂在启动上

安装内核 4.6 后,我们使用 Debian 8.5 Jessie 启动开发服务器。它不会出现错误消息“设置 LVM 卷组”。

VM 具有 Debian 8,带有向后移植存储库,使用 sysV 而不是 systemd 启动,并使用 LVM。

我可以使用 knoppix live 映像启动它,并使卷组中的 6 个 LVM 分区显示为:

vgchange -ay 

我还能够挂载 LVM 分区并编辑它们,因此看起来不存在任何类型的 LVM 问题。

我还利用这一点以自然顺序挂载所有分区,包括挂载绑定 proc、sys 和 dev,从而运行 chroot 来更自然地运行其他调试/修复命令。

已经尝试将启动算法更改为CONCURRENCY=none/legacy,但没有取得太大成功。

还重新生成了该initrd文件,在升级内核时服务器的磁盘空间是否已满,使用以下命令:

sudo dpkg-reconfigure linux-image-4.6.0-0.bpo.1-amd64 

这也没有任何区别。

我还重新安装了 grub,使用:

sudo update-grub
sudo grub-install /dev/sda

它也不起作用。

我还在 中的内核选项中添加了调试选项grub,但是系统在启动时既不打印相关错误,也不在错误后打印任何其他消息。

也没有任何日志或dmesg日志可供检查,因为此时启动时,系统日志仍然无法工作。

答案1

我最终找到了有问题的脚本,/etc/rcS.d/S05lvm2并且在该脚本中停止了虚拟机的命令为/sbin/lvm vgchange -aay --sysinit >/dev/null

从源文件中可以看出,其依赖关系S05lvm2为:

# Should-Start:      udev mdadm-raid cryptdisks-early multipath-tools-boot

最终我意识到有人或某事udev在启动时禁用了守护进程(就在上次成功启动后不久)。我还确定这不是内核安装后例程禁用udev

未满足服务依赖性的初始化脚本udev要么等待从未满足的依赖性,要么等待从未出现的设备(或两者)。

在上述 chroot 中运行时,该问题已得到修复:

sudo chkconfig udev on

(我们已经安装了吗chkconfig)。按照 Debian 的方式,它将是:

sudo update-rc.d udev defaults

接下来重新制作 initrd 文件(Debian 技巧,轻松重新生成 initrd 文件):

sudo dpkg-reconfigure linux-image-4.6.0-0.bpo.1-amd64

相关内容