使用 Live USB 从头开始​​安装 GRUB

使用 Live USB 从头开始​​安装 GRUB

我是 Windows 用户,但偶尔会使用 Live Ubuntu 来进行一些故障排除。我正在尝试更多地了解 Linux,并且我正在尝试将 GRUB 安装在 USB 驱动器上(最终我还会在同一驱动器上安装 Tiny Core,但现在我只想让 GRUB 工作,用于教育目的)目的)。

我阅读了 GRUB 手册直到“使用 grub-install 安装 GRUB”部分,但是我遇到了各种错误,我缺乏基本知识来理解这些错误(并且无法在 Google 上找到答案)。

这是我到目前为止所做的:

  1. 从 Ubuntu 18.04 的 Live USB 启动(使用 Rufus 和 MBR 分区方案从 Windows 创建)
  2. 使用 GParted 创建一个(空)MSDOS我的(第二个)USB 驱动器上的分区表 (/dev/sdb)
  3. 从下载grub-2.06.tar.gz源代码https://ftp.gnu.org/gnu/grub/
  4. ./configure安装运行所需的所有依赖项apt
  5. 执行./configure --host=x86_64 --with-platform=efi生成Makefile(我认为我的电脑是UEFI,因为文件夹/sys/firmware/efi存在)
  6. 执行sudo make install

从这一点来看,如果我这样做:

  • sudo grub-install /dev/sdb我明白了grub-install: error: cannot find EFI directory.
  • sudo grub-install /dev/sdb --efi-directory=/cdrom/EFI我明白了grub-install: error: unknown filesystem.

有人能给我指出正确的方向来让我摆脱困境吗?我在网上找到的所有指南都是关于在已安装 Linux 操作系统时“修复”GRUB 的。多谢。

答案1

我认为您混合了传统选项和 uefi 选项,并且没有正确设置 uefi。

如果您已经有 Windows,则不需要其他msdos分区。 (这是假设您希望它位于硬盘驱动器而不是可移动介质上。)

  • 创建空目录/boot/efi
  • 查看分区表以查找 EFI 分区。将其安装在/boot/efi;里面应该已经有windows启动件了。如果您已经安装了 Linux,则应该将其添加(最好使用其 uuid)到 /etc/fstab
  • 然后运行grub-install但没有任何选项。它应该找到您安装的 efi 分区。您尝试使用的磁盘选项是旧版的。
  • grub-install 应该创建一个 linux 目录,并且 windows 目录也应该在那里;两个操作系统应位于同一 EFI 分区中。
  • Grub 可能还需要一个 linux 格式的填充 /boot 分区来存储它的一些部分。

在可移动媒体上安装略有不同。

相关内容