Linux kernel vmware workstation中自定义Linux内核构建失败
在vmware workstation内尝试编译/构建和启动自定义内核时,在启动新内核时,它失败并落在shell上,错误为“无法通过uuid找到磁盘”。 我在ubuntu和centos上都试过了Linux kernel vmware workstation中自定义Linux内核构建失败,linux-kernel,vmware-workstation,ubuntu-15.04,Linux Kernel,Vmware Workstation,Ubuntu 15.04,在vmware workstation内尝试编译/构建和启动自定义内核时,在启动新内核时,它失败并落在shell上,错误为“无法通过uuid找到磁盘”。 我在ubuntu和centos上都试过了 我试过但没用的东西 检查启动项中uuid的映射和目录中是否存在 initramfs更新 将root=uuid=替换为/dev/disk/sda3 vmware workstation有问题吗? 如何纠正?..我自己尝试在另一个分区上使用Centos安装将Fedora 22引导到一个空白分区时也遇到
我试过但没用的东西
如何纠正?..我自己尝试在另一个分区上使用Centos安装将Fedora 22引导到一个空白分区时也遇到了类似的错误。我从来没有完全解决它,但我确实发现问题出在我的initrd中,而不是内核中 问题是initrd没有启动LVM,因为dracut没有告诉initrd它需要LVM。因此,如果您手动启动LVM,您应该能够引导到您的系统来修复它 我相信这就是我从应急炮弹发出的启动LVM的命令序列:
vgscan
vgchange -ay
lvs
然后退出以恢复正常引导
您可能必须手动装载LVM/etc/fstab条目,我记不起是否装载过。请尝试以下操作:
sudo update-grub
然后:
检查fstab
文件不会有什么坏处。在那里,您应该找到驱动器的UUID。确保在fstab
中设置了正确的标志
另外,
grub.cfg
中有一个设置,它使用了老式的十六进制UUID。看看吧 问题在于在执行一个
制作oldconfig
并为新选项选择默认值,确保有足够的磁盘空间用于创建映像。
在我的例子中,创建的映像不正确,因此无法在启动时装载映像
比较时;映像大小比较低版本的现有映像小得多,因此我添加了另一个大小足够的磁盘,然后 制作bzImage 制作模块 安装模块 安装 开始像个魔术师一样工作。
我想知道为什么映像创建会提前完成,并导致映像损坏(大小较小),而[每次]都没有抛出任何错误。您能在dracut shell中看到/dev/disk/sda3或/dev/sda3吗?尝试查看dmesg以查看是否有任何错误。命令
ls-fa
是否不显示它正在查找的uuid?这看起来不像是内核构建失败,更像是启动问题,您可能希望根据引导加载程序中的/dev/sd[a-z][1-4]
来确定驱动器的目标。@Matt我可以在dracut shell中看到它们,尝试在命令行中修改它们,但没有帮助。dmesg给出的错误与问题中提到的错误相同。@问题中提到的u8sand已经尝试用/dev/disk/sda3替换root=uuid=没有帮助。这确实是一个启动问题。您是否尝试在dracut shell中手动装载卷?无法识别vgscan命令。如何明确进入应急壳。。?当它无法启动时,它会自动下降到紧急外壳对吗?是的,没错,它就是你第二个屏幕截图中的那个。为什么VGS无法识别它呢。。?应该怎么做才能让它在紧急情况下工作…?嗯。。。根据我在Linux系统上碰巧拥有的哪个vgscan
,vgscan
存在于/sbin
中。也许如果您尝试/sbin/vgscan
它会工作吗?不@Adam sbin内没有vgscan。我在centos-7mkinitcpio上,无法识别命令。我有ubuntu和centos,但在来宾机器中没有archlinux。您是否检查了我提到的GRUB
选项?它可能无法启动,因为它需要不同的格式。是的@Ray我已经更新了它,运行了很多次,但没有帮助:(打开GParted,转到要引导的卷的属性。应该有一个较旧的UUID,如下所示:GHG54-85NFG-FG985
尝试在GRUB
中使用它,而不是/dev/disk/sda3
mkinitcpio -p linux