在Acer笔记本电脑上,我安装了Windows 10 /dev/sda4
,ESP分区为/dev/sda2
。
如《初学者指南》中所述,我在新创建的分区上安装了Arch Linux,/dev/sda5
并/dev/sda6
与Windows 10创建的ESP交换/dev/sda2
为/boot
。
作为引导程序,我选择systemd-boot
了指南推荐的主板(如果是UEFI)。
我配置/boot/loader/loader.conf
如下:
timeout 10
default arch
我创建了一个条目arch.conf
在/boot/loader/entries/arch.conf
如下;
title Arch Linux
linux /vmlinuz-linux
initrd /initramfs-linux.img
options root=/dev/sda5 rw
但是默认情况下,重新启动Windows 10后会启动。我什至看不到引导程序菜单。在启动选项中也没有选择Linux启动加载程序的选项。我究竟做错了什么?
注意:fastboot
(Windows 10)和secureboot
(UEFI)均关闭。
在Windows 10 / Linux双启动-引导加载程序问题中,OP将GRUB用作引导加载程序。就我而言,我正在使用systemd-boot
。并且在我的设置中,fastboot
akafast startup
已被禁用。
#efibootmgr -v
返回我所有的启动选项。它在列表中具有Linux引导管理器,但是引导顺序未指定任何内容。因此,我通过手动编辑了启动顺序# efibootmgr -o 1003,1001,2001
。但是,问题是相同的。重新引导后,引导顺序将还原。
好,我尝试了以下
#efibootmgr -v
这将返回我所有的启动选项。它在列表中具有Linux引导管理器(1003),但引导顺序未指定任何内容。因此,我通过以下方式手动编辑了启动顺序
# efibootmgr -o 1003,1001,2001
但是,问题是相同的。重新引导后,引导顺序将恢复原状。所以我检查了Linux引导管理器是否可以bcd
存储在Windows 10中
bcdedit /enum firmware
bcd
商店包含我的Linux启动管理器。所以我跑了
bcdedit /set {bootmgr} path \EFI\systemd\systemd-bootx64.efi
在提升的命令提示符下。该命令将使Windows启动加载程序无需直接调用Windows 10即可调用Linux启动管理器。
这确实解决了我的问题。现在,我在同一HDD上具有双引导Windows 10和Arch Linux。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句