我对 Linux 还很陌生,想尝试一下。我有 Acer Aspire Nitro - 16GB RAM、Core i7、2 个硬盘 - 128 GB SATA 和 1 TB HDD。
我想在 SATA 磁盘上安装 Windows 10,在 HDD 上安装 Ubuntu。SATA 磁盘(磁盘 0)转换为 GPT,HDD 磁盘(磁盘 1)为 MBR。我使用 cmd diskpart 命令执行了此操作。
BIOS 信息:UEFI 模式已启用。安全启动也已启用,没有可禁用的选项。在 UEFI 模式下,快速启动选项消失。
我目前所做的:
安装前:格式化两个硬盘
安装 Win:
- 更改了 BIOS 中的启动顺序 - 1.USB、2.Disk0(SATA)、3.Disk1(HDD)
- 选择安装的SATA磁盘
- 完成 - 现在我已将 Disk0 分成 3 个 - 恢复分区、C、系统保留
安装 Ubuntu:
- 更改了 BIOS 中的启动顺序 - 1.USB、2.Disk1 (HDD)、3.Disk0 (SATA)、4.Win Boot Manager
- 在安装菜单中-选择其他内容
- Ubuntu 检测到我在 dev/sda 中安装了 Win,因此我可以看到不同的分区。HDD 标记为 dev/sdb。从该可用空间中,我创建:
- 交换分区 - 主分区,20GB
- 根分区 - 逻辑,20GB,安装到 /
- Home 分区 - 逻辑,400GB,挂载到 /home
- Fat32 分区挂载到 /windows,20GB
- EFI 启动分区 - 主分区,200 MB
用于安装引导加载程序的设备:dev/sdb WDC bla-bla (1TB)
使用这些教程:安装时如何使用手动分区? 和https://help.ubuntu.com/community/UEFI#Creating_an_EFI_System_Partition
我的预期:据我所知,我预期有两个 EFI 启动分区 - 每个磁盘一个。Disk0 启动 Windows,Disk1 启动 Ubuntu。由于此阶段启动顺序不变 - 我希望 HDD 首先启动,然后显示 GRUB 启动加载程序,这样我就可以选择运行哪个操作系统。
我得到的是:直接运行 Windows。当我按下时,F12我看到两个选项
- Windows 启动管理器(TS128GMTS800)
- Ubuntu(TS128GMTS800)
TS128GMTS800 是 SATA 磁盘的型号。因此,我恰好在 SATA 中有一个 EFI 引导加载程序,可以同时运行 Win 和 Ubuntu。
这里到底发生了什么? GRUB 加载程序在哪里? 我如何才能获得 Ubuntu 而不F12每次都依赖它?
我不确定在安装过程中我是否遗漏了什么......(可能阅读了大量关于分区/操作系统主题的内容,但不幸的是,这需要经验)
GParted 的一些截图可能会揭示安装过程中的其他问题
截屏(dev/sda = SATA,dev/sdb = HDD)
如您所见,dev/sdb3 未挂载到 boot/efi,但同时它具有 boot 和 esp 标志。这实际上是我在 Ubuntu 安装期间选择为 EFI 启动分区的分区,奇怪的是它没有被挂载。
答案1
UEFI 安装到第二个磁盘时存在一些已知问题:
1) 安装程序始终将 grub 放在 sda 上,无论您指定引导加载程序的位置如何。解决方法:只需将整个 sda EFI 分区复制到 SDB。可以使用 grub-install 将非安全启动 (grubx64.efi) 加载到您指定的磁盘上(但上次我检查时安全开关没有任何作用)。2
) Grub 仍然无法在启用安全启动的情况下启动 Windows。您仍然需要使用 EFI 启动菜单来在启用安全启动的情况下启动 Windows。禁用安全启动是解决此问题的简单方法。