我想在 1TB GPT SSD 上使用 Arch Linux 和 Windows 10 进行 UEFI 双启动。我读本指南并决定遵循“Linux before Windows”安装(我已经在另一个 SSD 上安装了可以运行的 Arch Linux)。然而,安装 Windows 后,我遇到了臭名昭著的“Inaccessible_boot_device”屏幕。我没有使用 RAID,也没有控制器。
这些是我的步骤:
我按如下方式对空间进行了分区(来自 的输出
fdisk -l
):bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: 05E9711B-29A2-4D4F-9E40-812D4F57DF4E Device Start End Sectors Size Type /dev/sda1 2048 2099199 2097152 1G EFI System /dev/sda2 2099200 35653631 33554432 16G Linux swap /dev/sda3 35653632 304089087 268435456 128G Linux filesystem /dev/sda4 304089088 534775807 230686720 110G Linux home /dev/sda5 534775808 1071646719 536870912 256G Linux filesystem /dev/sda7 1281361920 1281394687 32768 16M Microsoft reserved /dev/sda8 1281394688 1282478079 1083392 529M Windows recovery environment /dev/sda9 1282478080 1911623679 629145600 300G Microsoft basic data
我曾经
rsync
将 arch 文件从一个分区复制到另一个分区(不包括 EFI 分区)。然后我安装了 GRUB 来检查是否可以启动到 linux,一切顺利。我使用最新版本的 Windows 通过可移动介质安装了 Windows。我选择“高级设置”并将其安装在 Windows 基本数据分区上(
/dev/sda9
在我的例子中)我启动到 arch linux 并使用重新配置 GRUB
os-prober
,它成功地链式加载了 Windows 启动管理器。启动进入 Windows 并出现蓝屏并出现 Inaccessible_boot_device 错误。 Linux 运行得很好。
我尝试过的:
- 通过安装介质修复 Windows 安装(“自动修复”)
- 重新安装 Windows
- 使用BCDedit修改默认引导选项(我的预感是引导加载程序不知道/找不到Windows分区)——从输出中
bcdedit
选择右侧分区作为默认分区 - 使用以下命令检查卷是否有错误
chkdsk
- 使用 BCDedit 修改许多其他字段,但没有一个产生任何结果