首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >那么efibootmgr没有看到所有可引导的分区。

那么efibootmgr没有看到所有可引导的分区。
EN

Ask Ubuntu用户
提问于 2023-03-03 06:13:43
回答 1查看 99关注 0票数 0

我是个无赖。所以我的computer.They上有很多引导操作系统都是基于Ubuntu的。我已经在Ubuntu20.04.5和Ubuntu22.10上安装了efibootmge。但在这两个操作系统中,efibootmgr只为我提供了几个可引导的分区。我已经尝试了v-详细设置,但仍然得到了相同数量的条目。我想有时更改默认的引导操作系统。但是efibootmgr并没有给我一个完整的列表。在引导时,我会得到一个16个操作系统的列表。

efibootmgr只给我提供了7来引导:下面是efibootmgr的输出。

代码语言:javascript
复制
BootCurrent: 0000
Timeout: 0 seconds
BootOrder: 0000,0003,0002,0001,0014,0015,0016,0017,0018,0019
Boot0000* ubuntu
Boot0001* MX19
Boot0002* debian
Boot0003* MX21
Boot0014* UEFI: Hitachi HDS721050CLA362
Boot0015* Diskette Drive
Boot0016* Hitachi HDS721050CLA362
Boot0017* USB Storage Device
Boot0018* CD/DVD/CD-RW Drive
Boot0019* Onboard NIC

00000003,0002,0014,0015,0016,是可引导的0017,0018,0019错误条目

gparted显示了15个可能的引导项。

12,11,6,2,1,4,9,5,13,14,15,16,17,18,19和25

efibootmgr能处理多少引导项有限制吗?我在安装efibootmgr时做错了什么吗?任何帮助都将不胜感激。

EN

回答 1

Ask Ubuntu用户

发布于 2023-03-05 04:10:20

efibootmgr实用程序显示EFI自己的启动菜单选项。这些选项指向不同的东西--内置工具,如EFI shell或安装实用程序;网卡等设备的引导功能;磁盘的默认/后备引导加载程序;或EFI系统分区(ESP)上的个别引导程序。这是与您的问题相关的最后一个类别,但是您的efibootmgr输出显示了大多数或所有类别的条目。

大多数OSes在ESP上安装EFI引导加载程序,批准的位置是EFI目录的子目录。在Ubuntu的例子中,这个位置是EFI/ubuntu。Ubuntu在/boot/efi上挂载ESP,所以在Ubuntu中,引导加载程序存储在/boot/efi/EFI/ubuntu上。重要的是,Ubuntu的每个实例都会将其引导加载程序安装到相同的位置,并创建相同的EFI引导管理器条目,或者重用现有的项。Ubuntu默认使用GRUB 2作为引导加载程序。因此,如果您按照您的指定安装了Ubuntu20.04和22.10,那么它们最终将破坏对方的GRUB 2二进制文件和配置文件。最近安装或更新的GRUB 2将接管这一引导条目。

如果您只安装了两个Ubuntus,这通常不会造成太大的问题,因为它们会检测到彼此的配置,而GRUB 2菜单将显示这两个选项。当将其他发行版添加到混合版中时,这可能会成为一个更大的问题。例如,您的输出显示一个debian条目。如果您同时设置了Ubuntus,然后安装Debian,那么Debian的GRUB 2将成为默认设置。它在检测Ubuntu安装并引导它们方面可能做得很好,也可能没有做得很好。当其中一个Ubuntus被更新时,它可能成为默认的引导程序。

使用固件的引导管理器在这些选项中进行选择也是可能的,但正如我所说的,一些选项最终将被“折叠”到一个单一条目中。理论上,您可以通过在ESP上为每个Ubuntu提供自己的GRUB 2来解决这个问题--比如说,EFI/ubuntu2004EFI/ubuntu2210。不过,我不知道您需要修改哪些GRUB配置文件才能实现这一点。

另一个选择是绕过GRUB 2。与GRUB 2相比,系统d-引导rEFInd都被设计用来帮助处理更复杂的多引导配置,而GRUB 2实际上并不适合这个任务。(免责声明:我是rEFInd的维护者,所以我并不完全没有偏见。)其中,systemd在设计上更简单,但更难设置,特别是因为它需要将内核存储在EFI系统分区(ESP)上。(至少,这是我最后一次检查的情况。)rEFInd ( OTOH )可以从几个Linux文件系统(即ext2 2/3/4FS、Btrfs和ReiserFS)中读取内核,并且它需要在它要引导的OSes上进行最小的配置更改。您可以通过任何一个程序为每个Ubuntu或Ubuntu样的OSes获取单独的条目。假设安全引导被禁用,您可以尝试使用rEFInd闪存驱动版本而不安装它;但是,如果您使用单独的/boot分区(如LVM安装程序),则需要通过两次按Tab或F2来调整启动选项,而不是Enter。

票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1457504

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档