我已经在笔记本上成功安装了 ubuntu。我有两个物理驱动器,一个 SSD 和一个 HDD。BIOS 已锁定,并且 SecureBoot 已打开,无法关闭。
我之前在 HDD 上安装了 Windows,最近将其重新安装到 SSD 上(Windows 启动管理器仍在 HDD 上)。我将 Ubuntu(95 GB 分区和 5 GB 交换空间)安装到我在 HDD 上创建的单独分区上。引导加载程序在 SSD 上(我担心删除 Windows 启动管理器并破坏 Windows)。
问题是我无法在 BIOS 中一直看到 SSD,因此无法启动 Linux。我理想情况下希望 grub 可以帮我启动 Windows 或 Linux(在启动时选择)。以这种方式设置的最佳方式是什么,同时最大程度降低危险?我担心得到的系统无法运行任何操作系统(或更糟)。
有没有人做过类似的事情并且可以提供一些建议甚至指南?
答案1
在 EFI 下,您看到的引导选项列表并不能很好地表明固件是否可以访问给定的磁盘。EFI 的引导顺序列表可以包含基于 BIOS 模式引导加载程序(通常对应于特定设备)、EFI 引导文件、后备 EFI 引导文件(通常对应于特定设备)、插卡中的 BIOS 模式或 EFI 模式选项 ROM 等的引导信息。其中一些选项由固件自动生成,但其他选项则由 OS 安装程序或您创建(使用 Ubuntu 的 等工具efibootmgr
)。您在固件中设置的选项(例如,用于激活网络引导)可以添加或删除引导选项。请注意,磁盘设备可能完全可以被固件访问,但 EFI 的引导列表可能未提及它,因为该磁盘设备没有固件可以检测到的引导加载程序(或者没有记录在 NVRAM 中的引导加载程序)。
话虽如此,是固件识别磁盘设备的速度很慢,或者固件可能完全无法访问磁盘设备(因为固件可能缺少驱动程序)。根据您的描述,第一种情况可能您可能会遇到这种情况,但至少同样可能的是,您没有在启动列表中看到您的 SSD,仅仅是因为它上没有安装引导加载程序。
为了防止计算机无法启动,您可能需要准备一个 USB 闪存驱动器或 CD-R,里面有我的rEFInd 启动管理器。该页面上提供了两种媒体类型的图像下载链接。但请注意,启用安全启动后,库存的 rEFInd 图像将无法使用。要添加安全启动支持,您必须完成额外的步骤,如rEFInd 安全启动文档。或者,如果您需要使用 rEFInd 启动计算机,则可以暂时禁用安全启动。(几乎总是可以禁用安全启动。这样做的选项可能非常模糊或难以识别,但几乎总是可用的。)
考虑到这一点,你可以拥有一个或多个EFI 系统分区 (ESP),位于一个或两个磁盘上。使情况复杂化的是,Ubuntu 的 GRUB 配置要求 GRUB 能够读取其配置文件 ( grub.cfg
) 和 Linux 内核,这两者都位于/boot
Ubuntu 上。因此,如果是从 EFI 访问一个磁盘时出现问题,如果/boot
位于问题磁盘上,GRUB 将无法正常工作。从EFI/boot
可访问性的角度来看,您可以通过在更安全的磁盘上创建一个单独的分区(使其至少为 500 MiB)来防止这种可能性。同样,Windows 引导加载程序必须能够访问 Windows 分区。
总之,如果您对 EFI 读取某个磁盘的能力有任何疑问,则应将 ESP、Ubuntu/boot
分区和 Windows分区放在“安全”磁盘上。然后,您可以使用可能对 Ubuntu 根目录 ( )、Ubuntu 、交换、Windows 数据和其他任何内容C:
造成问题的磁盘。/
/home