卡在 GRUB 命令行

卡在 GRUB 命令行

这是我所看到的:

GNU GRUB version 2.02~beta2-9ubuntu1

Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists possible device or file completions.

grub> _

我现在应该怎么做?

答案1

我从eli 在 Unix 论坛中的回答

原因:启动过程找不到根分区

解决方案

请输入 ls 这将显示所有分区,然后输入单个

ls (hd0,1)/
ls (hd0,2)/ 

... 依此类推,直到找到

(hd0,1)/boot/grub或者(hd0,1)/grub

对于 EFI,

(hd0,1)/efi/boot/grub或者(hd0,1)/efi/grub...现在相应地设置启动参数,只需输入您的号码即可

set prefix=(hd0,1)/grub
set root=(hd0,1)
insmod linux
insmod normal
normal

现在它将启动,请打开终端并输入此命令行

sudo update-grub ...下次它应该可以正确启动。如果没有,您必须再次执行这些步骤。在其他情况下,您可能需要再次修复或安装 grub,请看看这篇文章

我的软件:Windows 10 和 Ubuntu 16.04 双启动

硬件:HP Pavilion 15t

答案2

您的引导程序有问题。您应该初始化内核。首先使用命令ls,然后根据它调整以下命令。在 处hd0写入您的磁盘并1写入您的号码。

grub> set root=(hd0,1)
grub> linux /vmlinuz-4.4.0-38-generic 
grub> initrd /initrd.img-4.4.0-38-generic
grub> boot

如果你不知道你的内核版本是什么,请写入:

grub> linux /vmlTab
grub> initrd /inTab

仅限首次尝试grub> boot

答案3

这不是一个永久性的修复,但您只需退出即可继续:

grub> exit

这将转到 grub 菜单(如果您有双启动系统),您可以在其中选择要启动的操作系统,或者直接转到主操作系统。这是使用 UEFI 引导加载程序双启动系统时常见的问题。

答案4

我通过将 ubuntu 安装到外部 USB SSD 外壳上而进入此状态。安装程序已修改 /boot/efi/EFI/ubuntu/grub.cfg 中的文件以指向新驱动器。当我移除 USB 外壳时,机器将我带到 grub> 提示符。

根据此处的答案:我可以通过运行以下命令从 grub> 提示符启动旧驱动器:

set prefix=(hd0,gpt1)/boot/grub
set root=(hd0,gpt1)/boot
insmod normal
normal 

您需要为您的机器选择正确的前缀/根(使用制表符自动完成)。

然后,我修改了 /boot/efi/EFI/ubuntu/grub.cfg 中的 search.fs_uuid 行以指向旧驱动器,然后它像以前一样启动。

search.fs_uuid 2cbadaa8-abad-4991-b99d-bbadbad99dbe root 
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg

我根据以下输出将 uuid 替换为:

lsblk -o NAME,SIZE,MOUNTPOINT,UUID

相关内容