由于 Meltdown 问题,我将 CentOS7 内核从 3.10.0-693.11.1 更新到 3.10.0-693.11.6,但更新后,我无法启动,因为 centos drop 到 dracut 时出现错误
warning /dev/mapper/centos-root does not exist
dracut:/# ls /dev/mapper/
control
dracut:/#
Run Code Online (Sandbox Code Playgroud)
看来我的 initrd 配置错误,我仍然可以启动 3.10.0-693.11.1,没有任何问题。我正在尝试调试这个(网上有很多资源),但看起来我在这里基本上缺少一些东西,因为我无法执行 lvm 命令
dracut:/# lvm scan
sh: lvm: command not found
dracut:/# ls /etc/lvm/lvm.conf
ls: cannot access /etc/lvm/lvm.conf: No file or dictionary
dracut:/# ls /etc/lvm
ls: cannot access /etc/lvm: No file or dictionary
Run Code Online (Sandbox Code Playgroud)
我发现工具的问题通常是由 /sbin 中缺少二进制文件引起的,所以我安装了稳定内核并检查:
root@localhost ~# ls /sbin/lvm
/sbin/lvm
root@localhost ~# which lvm
/sbin/lvm
Run Code Online (Sandbox Code Playgroud)
因此二进制文件位于正确的位置,但由于某种原因 dracut 在 /sbin 中看不到它。
我的 3.10.0-693.11.1 和 …
我在Ubuntu 16.04 KVM上安装了centos7,磁盘格式为qcow2。
为了部署我的 centos 机器,我需要 vhdx 磁盘格式来支持 Microsoft 的 Hyper-V。我使用 qemu-image 将其从 qcow2 文件格式转换为 vhdx。
qemu-img convert -O vhdx centos.qcow2 centos.vhdx
Run Code Online (Sandbox Code Playgroud)
当我在 Microsoft 的 Hyper-V 中使用 centos.vhdx 磁盘文件创建新一代 1 VM 时,出现如下错误:
dracut-initqueue[220]: Warning dracut-initqueue timeout - starting timeout scripts
Run Code Online (Sandbox Code Playgroud)
查看我的引导屏幕:
我该如何解决这个问题?