刚刚在双启动设置上安装了 Ubuntu 22.04,现在我的其他操作系统没有显示

Arr*_*lt3 4 boot grub2 dual-boot os-prober 22.04

我刚刚在我的系统上以双引导配置安装了 Ubuntu 22.04。过去,当我使用 Ubuntu 20.04 执行此操作时,每次启动时都会显示 GRUB 启动菜单,允许我选择要启动的操作系统。然而,这种情况不会再发生了——我无法启动除 Ubuntu 22.04 之外的任何操作系统。发生了什么事,我该如何解决?

Arr*_*lt3 6

在 Ubuntu 22.04 中,通常会在所有操作系统中填充启动菜单的功能称为 os-prober。出于安全原因,Ubuntu 22.04 (GRUB 2.06) 的早期 alpha 版本附带的引导加载程序默认禁用 os-prober,这样系统上的其他操作系统就不会被检测到。(来源: https: //www.gnu.org/software/grub/manual/grub/html_node/Simple-configuration.html#Simple-configuration在页面上搜索“os-prober”即可找到相关信息。)

要让其他操作系统显示在启动菜单中,您可以重新启用 os-prober。这将带来一些安全风险(例如,如果您的系统中插入了恶意驱动器,并且内核更新之类的内容导致 os-prober 被执行,则恶意驱动器可能会尝试利用您系统中的安全漏洞) ,但对于许多用户来说,这没什么大不了的,而且好处大于风险。

要重新启用 os-prober,请使用 打开终端Ctrl+Alt+T,然后运行sudo nano /etc/default/grub以编辑 grub-mkconfig 配置文件。在打开文件之前,系统会要求您输入密码,因为您是以 root 用户身份打开它的。文件打开后,添加GRUB_DISABLE_OS_PROBER=false到文件,按Ctrl+S保存并Ctrl+X退出。最后,运行sudo grub-mkconfig -o /boot/grub/grub.cfg以重新生成 GRUB 配置和引导菜单,然后键入exit以离开 root shell。您现在可以关闭终端,您应该完成了!

  • 您可以简单地运行“sudo update-grub”,而不是“grub-mkconfig -o /boot/grub/grub.cfg” (2认同)