![是否有适合 GPT 样式分区硬盘的操作系统选择器?](https://linux22.com/image/1573392/%E6%98%AF%E5%90%A6%E6%9C%89%E9%80%82%E5%90%88%20GPT%20%E6%A0%B7%E5%BC%8F%E5%88%86%E5%8C%BA%E7%A1%AC%E7%9B%98%E7%9A%84%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F%E9%80%89%E6%8B%A9%E5%99%A8%EF%BC%9F.png)
我已经在外部硬盘上安装了 Ubuntu,每当我想要启动它时,我都必须按 F12 并进入设置并设置 USB 优先于 Windows 启动,所以当你想使用这两个操作系统时这个过程有点累(虽然我主要使用 Linux),每次你都必须更改该设置并重新启动系统。
我搜索了一下,找到了一个回答但它有点旧了,主要讨论的是 MBR 样式的分区硬盘,而我的所有驱动器都是 GPT,所以我该怎么办?有没有更好(更快,也许更现代)的方法来实现这一点?
答案1
这与分区表格式无关,但与计算机的固件类型有关。
如果您使用 BIOS 系统,它将始终从扇区 0(“MBR”)运行初始引导加载程序,即使它是没有在那里存储分区的 GPT 磁盘。
(BIOS 本身并不关心分区 - 它只需要引导代码。理解分区是安装的任何引导代码的工作。)
如果您使用 UEFI 系统,它将始终从 NVRAM 读取启动项并从 EFI 系统分区运行选定的引导加载程序。
(UEFI 规范定义了一个“EFI 系统分区”用于两个都GPT 和 MBR。)
只有安装所选引导加载程序的细节可能会发生变化(例如,如果您正在为 BIOS 安装 GRUB2,则需要额外的 GPT 特定准备)。
因此,你找到的答案仍然是一样的 - 制作一个引导加载程序链式负载到另一个磁盘中。您的 Ubuntu 已经使用 GRUB2,因此向其中添加 Windows(即使来自另一个磁盘)也是完全可行的。
但是:如果您使用启用了“CSM(BIOS 兼容性)”模式的 UEFI 系统,并且您的操作系统安装在不同的模式下(例如,Windows 安装在 UEFI 模式下,而 Ubuntu 安装在 BIOS 模式下),那么您可能不能使用相同的自定义启动管理器来处理两者。
但无论如何,我要做的第一件事是查看固件是否有自己的启动菜单与设置屏幕分开。几乎所有最新固件都有这样的菜单:可以通过按(或按住)Esc、F8、 或F11或 等键来访问。(我早在 2006 年就见过具有此功能的计算机。)
因为这个启动菜单是为了制作一个暂时的选择(不会永久更改启动设置),它会为您提供相同的“操作系统选择器”功能,而无需配置自定义启动管理器。唯一的区别是多按一次键。
此外,固件内置的启动菜单做适用于混合 UEFI/BIOS 系统 - 大多数情况下它会在同一列表中显示 UEFI 条目和 BIOS 设备。