USB 加密狗的 EFI 启动顺序涉及哪些文件? (32/64足弓问题)

USB 加密狗的 EFI 启动顺序涉及哪些文件? (32/64足弓问题)

我正在尝试从 USB 启动 64 位机器,其中 EFI 仅兼容 32 位,这是一个联想Ideapad 100S

当我在完整的 32 位 USB 加密狗(从.iso)上启动时,它可以工作。但在 64 位中进行相同的修订后,情况却并非如此。

为了解决这个问题,我遵循建议修改 64 位 USB 密钥并在目录中添加 32 位 EFI 文件的教程/efi/boot

例如https://medium.com/@realzedgoat/a-sorta-beginners-guide-to-installing-ubuntu-linux-on-32-bit-uefi-machines-d39b1d1961ec

它在 2018 年的 Debian 上不起作用。

现在的 Debian 安装 USB 加密狗包含许多称为 EFI 的东西。

/boot/grub/efi.img
/boot/grub/
/boot/grub/x86_64-efi    <-- a dir with many driver modules
/efi/boot/bootx64.efi    <-- the original file
/efi/boot/bootia32.efi   <-- the file added thanks to tutorials

所以我真的错过了一些东西,或者启动磁盘已经改变,我必须修改更多。

那么您知道 EFI 加载顺序涉及哪些文件吗?

答案1

/efi/boot/boot<architecture>.efi根据 UEFI 规范,从可移动媒体启动时,这是 UEFI 固件应查找的文件。

但是,Debian 打包的 GRUB 引导加载程序可能还需要相应的 GRUB 模块目录及其内容:对于 32 位 GRUB,它将是/boot/grub/i386-efi/.我认为 Ubuntu 和 Fedora 配置它们的 GRUB 版本略有不同,并且它们的 GRUB 配置将更多 GRUB 模块打包到主 GRUB .efi 二进制文件中。

这些模块位于grub-efi-ia32-bin软件包中,在正常运行的操作系统安装中,它们最初位于 下/usr/lib/grub/<module directory>,引导加载程序安装过程会将它们从那里复制到最终位置/boot/grub/<module directory>.

我认为它/boot/grub/efi.img包含 ISO-9660 标准的“El Torito”扩展所需的 CD-ROM 启动映像,但从 FAT32 格式的 USB 加密狗启动时实际上并未使用它。

相关内容