![如何在 do-release-upgrade 之后从 grub 提示符手动启动?](https://linux22.com/image/809065/%E5%A6%82%E4%BD%95%E5%9C%A8%20do-release-upgrade%20%E4%B9%8B%E5%90%8E%E4%BB%8E%20grub%20%E6%8F%90%E7%A4%BA%E7%AC%A6%E6%89%8B%E5%8A%A8%E5%90%AF%E5%8A%A8%EF%BC%9F.png)
我读了几个关于这个主题的其他问题,他们都提到了 Grub2 社区文档和从安装盘安装 grub 配置。我在阅读文档时遇到了一些问题,所以我就在这里。这可能是完全的 PEBKAC。
我在一台 KVM 虚拟化的 Ubuntu 10.04 服务器上安装了两台客户机,两台服务器最初都运行 10.04。我使用“do-release-upgrade”将两台机器都顺利更新到 10.10,重新启动,然后运行“do-release-upgrade”将两台机器都更新到 11.04。由于太匆忙,我忽略了有关缺少 grub 配置的错误。当我重新启动客户机时,自然会出现 grub 提示符。发出“boot”命令会出现“错误:未加载内核”。
以下是根分区的 ls 输出:
按照手动引导指南操作时,我无法直接使用“SS928-root”或“hda0,1”作为根文件系统获取选项。大多数情况下都会出现“文件未找到”错误。
在这两个文件系统上发出“ls”会显示 vmlinuz 和 initrd.img 的几个选项。如果有帮助的话,这些客户机正在使用 LVM。
编辑
我又走了一步。以下命令序列:
出现以下屏幕(滚动浏览相当多的文本后):
答案1
看了 jdehaan 的帖子后,我检查了一台配置相似的机器。从另一台机器的 grub.cfg 中,我使用以下命令来启动它:
recordfail
insmod ext2
set root='(hd0,1)'
linux /vmlinuz-2.6.32-server root=/dev/mapper/SS928-root ro quiet
initrd /initrd.img-2.6.32.30-server
boot
我想下一步就是弄清楚如何替换这台机器上的 grub.cfg。
答案2
我遇到了同样的问题,可以通过指定来解决问题
linux /boot/vmlinuz.... root=/dev/sda1
所以/dev/sda1(或者与您的系统匹配的内容)而不是 SS... 在我尝试期间,您的其余帖子保持不变。
答案3
如果您在某处有一个有效的 grub 配置,ls
则根级别会列出分区,并configfile (boot device)/path/to/grub.config
允许您启动 grub 配置。