如何在双启动安装中提供 grub 以从外部 USB 启动 Ubuntu 20.04 与 Windows 8.1 EFI 模式?

如何在双启动安装中提供 grub 以从外部 USB 启动 Ubuntu 20.04 与 Windows 8.1 EFI 模式?

我的存档目标如下:我想在同一硬盘上安装 Ubuntu 以及现有的 Windows 系统。我检查了 Windows (msinfo32),它正在 UEFI 模式下运行,安全启动已禁用。我在 sda6 上的加密 Luks/LVM 容器中安装了 Ubuntu,但我还想将外部 USB 驱动器/启动盘上的 grub-loader从。

最后,它应该可以在没有 USB 的情况下正常启动 Windows,并且当此 USB 连接到我的笔记本电脑时,它应该会自动启动 Ubuntu。安装 Ubuntu 后,我在启动时收到一个损坏的 grub 提示符。(Minimal Bash-like line editing is supported...

如何存档此场景并使其如上所述工作?

fdisk -l

Device         Start       End   Sectors   Size Type
/dev/sda1       2048   2050047   2048000  1000M Windows recovery environment
/dev/sda2    2050048   2582527    532480   260M EFI System
/dev/sda3    2582528   2844671    262144   128M Microsoft reserved
/dev/sda4    2844672 305432575 302587904 144.3G Microsoft basic data
/dev/sda5  305432576 306358271    925696   452M Windows recovery environment
/dev/sda6  306358272 939612159 633253888   302G Linux filesystem
/dev/sda7  939612160 976773119  37160960  17.7G Windows recovery environment

grub-bootloader 的外部 USB 驱动器如下所示

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdc1  *     2048 60061695 60059648 28.7G ef EFI (FAT-12/16/32)

sdc1分区的内容如下:

drwxr-xr-x 4 root root 16384 Sep 30 22:04  EFI/
drwxr-xr-x 2 root root 16384 Sep 30 21:19  grub/
drwxr-xr-x 2 root root 16384 Oct  1 08:47 'System Volume Information'/

grub 文件夹是空的。

EFI 包含以下内容:

drwxr-xr-x 2 root root 16384 Sep 30 22:04 BOOT/
drwxr-xr-x 2 root root 16384 Sep 30 22:04 ubuntu/

EFI/BOOT 包含:

-rwxr-xr-x 1 root root 1334816 Sep 30 22:04 BOOTX64.EFI*
-rwxr-xr-x 1 root root 1213032 Sep 30 22:04 fbx64.efi*
-rwxr-xr-x 1 root root 1269496 Sep 30 22:04 mmx64.efi*

EFI/ubuntu 包含:

-rwxr-xr-x 1 root root     108 Sep 30 22:04 BOOTX64.CSV*
-rwxr-xr-x 1 root root     201 Sep 30 22:04 grub.cfg*
-rwxr-xr-x 1 root root 1681280 Sep 30 22:04 grubx64.efi*
-rwxr-xr-x 1 root root 1269496 Sep 30 22:04 mmx64.efi*
-rwxr-xr-x 1 root root 1334816 Sep 30 22:04 shimx64.efi*

EFI/ubuntu/grub.cfg 包含此内容

search.fs_uuid d95a5ab4-76bd-4ab2-a05d-41c1dba56758 root lvmid/VmoR2t-OB91-x6E3-csJp-r79R-gAsE-CbYau0/S6fvUX-3vKN-yzeO-L7om-s6Ae-vlO9-eKSUvF 
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg

ls -al /dev/disk/by-uuid/

lrwxrwxrwx 1 root root  10 Oct  1 09:03 0079-8DF5 -> ../../sdc1
lrwxrwxrwx 1 root root  10 Oct  1 09:03 5266B2F066B2D3C7 -> ../../sda5
lrwxrwxrwx 1 root root  10 Oct  1 09:03 6C98155B981524DC -> ../../sda7
lrwxrwxrwx 1 root root  10 Oct  1 09:03 9E143B29143B0435 -> ../../sda4
lrwxrwxrwx 1 root root  10 Oct  1 09:03 C848147848146808 -> ../../sda1
lrwxrwxrwx 1 root root  10 Oct  1 09:03 EA3B-1E3B -> ../../sda2
lrwxrwxrwx 1 root root  10 Oct  1 09:03 f40a050c-d12c-418c-83cd-8ca5695dee89 -> ../../sda6

答案1

从外部驱动器启动 Ubuntu 加密驱动器。

我使用全盘加密选项安装了 Ubuntu。

如同:如何制作具有全盘加密的 BIOS/UEFI 闪存驱动器

在此处输入图片描述

我闪现https://phillw.net/isos/linux-tools/uefi-n-bios/mkusb_grub-boot-template-for-uefi-n-bios_fat32_4GB_use-in-wins_2020-09-07.img.xz在 Windows 中使用 Rufus 将其复制到 4GB 闪存驱动器,在 Ubuntu 中,mkusb 或磁盘也可以正常工作。

在此处输入图片描述 我使用 FAT32 分区来存储数据

然后,我从加密驱动器 (sdc5) 上的 grub.cfg 中剪切“加密”的 Ubuntu 菜单项,并将其作为第一个菜单项添加到外部 USB 驱动器 (sdd4) 上的 grub.cfg 中。

我已经成功在 BIOS 和 UEFI 模式下启动了该驱动器。

相关内容