Dual boot with Windows (简体中文)

From ArchWiki

重要信息

Windows 在 UEFI 和 BIOS 上的限制

不同版本的 Windows 对固件启动模式和分区表有不同的需求。以下依版本列出。

注意: 下列情形是 Windows 安装程序的限制。但 Windows 本身仍可能在安装程序不支持的环境下正常运行。例如,在绕过相关安装检测后,Windows 11 仍可在 BIOS/MBR 的配置上运行。
  • XP 所有版本均只支持从 BIOS/MBR 配置启动。
  • Vista
    • 32 位所有版本均只支持从 BIOS/MBR 配置启动。
    • 64 位 RTM 只支持从 BIOS/MBR 配置启动,SP1 及以上追加支持 64 位 UEFI/GPT 配置。
  • 7
    • 32 位所有版本均只支持从 BIOS/MBR 配置启动。
    • 64 位支持从 BIOS/MBR 或 64 位 UEFI/GPT 配置启动。
  • 8/8.1/10
    • 32 位支持从 BIOS/MBR 或 32 位 UEFI/GPT 配置启动。
    • 64 位支持从 BIOS/MBR 或 64 位 UEFI/GPT 配置启动。
  • 11 仅支持 UEFI/GPT。

对于预装系统的计算机:

  • XP、Vista、7(32 位)全是 BIOS/MBR 启动,无论软硬件配置如何。
  • 7(64 位)几乎都是 BIOS/MBR 启动。仅有极少数晚近的型号是 64 位 UEFI/GPT 启动。
  • 从 8 开始,都是 UEFI/GPT 启动。UEFI 和操作系统的位数(32/64)是相同的。

最准确的判断方式:

  • 启动到Windows
  • Win+R打开“运行”,运行msinfo32.exe
  • 系统信息->系统摘要->BIOS模式
    • UEFI -> UEFI
    • Legacy -> BIOS

总的来说,Windows 安装程序基于固件模式强制要求分区,UEFI 启动只能装到 GPT 盘,BIOS 启动只能装到 MBR 盘。

提示: Windows 10 1703 及以后版本提供从 BIOS/MBR 转换到 UEFI/GPT 的工具

Linux 内核没有这样的限制,但引导加载程序及其设置可能会有影响。如果想要在同一硬盘上启动 Windows 和 Linux,请考虑上述的 Windows 限制,因为引导加载程序的安装过程依固件和分区类型可能会有区别。

安装介质的限制

Intel Atom SoC(Clover 和 Bay)只提供 32 位 UEFI 支持,没有 BIOS 支持。由于 Arch 官方安装镜像没有 32 位 UEFI 启动支持,无法直接在这类系统上启动。可在在 32 位 UEFI 上启动 64 位内核查看变通方法。

UEFI 和 BIOS 引导加载程序的限制

大多数某类(UEFI 或 BIOS 之一)固件上的 Linux 引导加载程序,不能启动或链式加载另一种固件上的引导加载程序。例如,如果 Arch 以 UEFI 模式安装在一块硬盘下、Windows 以 BIOS 模式安装在另一块硬盘下,Arch 的 UEFI 引导加载程序不能链式加载 Windows 的 BIOS 引导加载程序。这与分区表类型无关。反之亦然。

有几个例外:

  • 装在苹果电脑上的 GRUB。这里,UEFI 模式的 GRUB 可以用appleloader命令启动 BIOS 模式安装的操作系统(在非苹果电脑上无效)。
  • rEFInd 理论上也支持从 UEFI 固件启动 BIOS 操作系统,但作者称在非苹果电脑上不总是正常工作。
  • 一块硬盘上的 BIOS/GPT Arch 所使用的引导加载程序可以启动另一块硬盘上的 BIOS/MBR Windows,如果该引导加载程序本身支持链式加载其他硬盘的系统。

UEFI 安全启动

快速启动和休眠

Windows 设置

关闭快速启动并关闭休眠
关闭快速启动并启用休眠
关闭启用启动并启用休眠

Windows 文件名限制

安装

先 Windows 后 Linux

BIOS 系统

使用 Linux 启动引导程序
使用 Windows Vista/7/8/8.1 启动引导程序

UEFI 系统

先 Linux 后 Windows

UEFI 固件

Windows 10 和 GRUB

故障排除

无法创建新分区或无法找到已有分区

安装 Windows 后 Linux 无法启动

恢复 Windows 启动记录

Windows 安装程序留下的 EFI 系统分区过于小

时间标准

蓝牙配对

参见