全新安装 18.04 启动至 Grub 提示符

全新安装 18.04 启动至 Grub 提示符

自从安装 Ubuntu 18.04 以来,我一直卡在 grub 提示符下。我尝试了所有能在网上找到的方法,但还是无济于事。

这是从 USB 启动的 Ubuntu 18.04 的全新安装。我安装了 17.10,但在新安装期间选择覆盖旧安装。由于我是双启动,因此我还有一个 Windows 10 分区。

安装顺利进行,但现在当我启动机器时,我最终会出现提示grub>

如果我输入 exit,Ubuntu 启动时不会出现任何问题。

如果我从 BIOS 中手动选择打开 Windows 的驱动器,则加载不会出现任何问题。

我尝试使用 grub-rescue 磁盘工具,但它说无法运行,因为它不在 EFI 模式。

诊断的输出显示:

=================== Suggested repair
The default repair of the Boot-Repair utility would purge (in order to fix packages) and reinstall the grub-efi-amd64-signed of nvme0n1p7, using the following options:        nvme0n1p1/boot/efi,
Additional repair would be performed: unhide-bootmenu-10s   fix-windows-boot use-standard-efi-file

我尝试使用以下命令安装 grub:

sudo grub-install --efi-directory=/dev/nvme0n1p1/

但是我收到一个错误:

Installing for i386-pc platform.
grub-install: error: install device is not specified.

这是 NVMie 驱动器。我有点困惑。还有什么我可以尝试的吗?

答案1

我能够解决我的问题(尽管我使用的是 EFI 而不是传统问题),通过从安装拇指驱动器启动、选择救援模式并在 /dev/sda 上重新安装 grub。

答案2

在 CSM/传统模式下重新安装 Ubuntu

有人对您的安装是 UEFI 还是 CSM(传统 BIOS 模式)感到困惑。最近的评论表明是后者。使用此参考

将 Ubuntu 转换为传统模式

笔记:仅使用此过程将 UEFI 模式的 Linux 安装转换为以 BIOS/CSM/旧模式启动。如果某些硬件在 UEFI 模式下无法正常工作,则可能需要进行此类转换。(视频卡是常见的问题来源。)当 Windows 以 UEFI 模式启动时,转换为以 BIOS/CSM/旧模式启动会使启动过程更加尴尬——您需要使用计算机的内置启动管理器在操作系统之间切换,而某些计算机的启动管理器非常差,因此这可能无法实现。

  1. 如果 Ubuntu 安装在 GPT 磁盘上(您可以通过“sudo parted -l”命令检查),请使用 Gparted 在其磁盘的启动位置创建 BIOS-Boot 分区(1MB、未格式化的文件系统、bios_grub 标志)。

  2. 启动 Boot-Repair,点击“高级选项”,转到“GRUB 位置”选项卡。

  3. 取消勾选“单独的 /boot/efi 分区”选项

  4. 单击“应用”按钮。

  5. 设置您的 BIOS,以便它以传统模式启动 HDD(请参阅上面的“以 UEFI 或传统模式设置 BIOS”段落)。


以下是原始答案

您正在尝试安装grub到根分区,但它需要进入 EFI 分区,该分区通常约为 500 MB。完整说明可用这里

基本上正确的语法是:

sudo grub-install --target=x86_64-efi --efi-directory=esp --bootloader-id=GRUB

答案3

要安装 grub,您需要为grub-install命令指定正确的参数。

这也是我大约一小时前在启动到提示符后重新安装 grub 时使用的方法:

sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader=ubuntu --boot-directory=/boot/efi/EFI/ubuntu --recheck

假设您已将启动分区挂载到 /boot,并将 EFI 分区挂载到 /boot/efi,则上述命令应该可以工作,只要 EFI 分区上有足够的空间容纳 grub。

如果您要安装到 USB 驱动器并且不想将 grub 安装到 PC 的 EFI 分区,请确保 USB 驱动器上有一个 EFI 分区,并且该分区已安装到 /boot/efi 而不是 PC 的分区。

答案4

如果您的系统以传统模式启动并且 GRUB 是为 EFI 目标安装的,则它将无法工作。

我建议如下:

如果文件夹的设备/boot已正确安装(或与 相同/),请尝试以下命令:

grub-install --boot-directory=/boot --target=i386-pc /dev/nvme0n1

假设/dev/nvme0n1是 NVIDIA SSD 磁盘(全部,不是分区)。确保备份您的数据。

相关内容