私のAcerラップトップでは、Windows10が/dev/sda4
にインストールされており、ESPパーティションは/dev/sda2
です。
ビギナーズガイド で説明されているように、新しく作成されたパーティション/dev/sda5
にArchLinuxをインストールし、作成されたWindows10と/dev/sda6
を交換しましたESP /dev/sda2
as /boot
。
ブートローダーとして、マザーボードがUEFI(つまりUEFI)の場合にガイドが推奨するsystemd-boot
を選択しました。
/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
aka fast startup
はすでに無効になっています。
#efibootmgr -v
はすべてのブートオプションを返します。リストにLinuxブートマネージャーが含まれていますが、ブート順序で何も指定されていません。そこで、# efibootmgr -o 1003,1001,2001
で手動で起動順序を編集しました。しかし、問題は同じです。再起動後、起動順序が元に戻ります。
OK、フォローしてみました
#efibootmgr -v
これにより、すべてのブートオプションが返されます。リストにLinuxブートマネージャー(1003)が含まれていますが、ブート順序で何も指定されていません。だから、私は手動で起動順序を編集しました
# efibootmgr -o 1003,1001,2001
しかし、問題は同じです。再起動後、起動順序が元に戻ります。そこで、LinuxブートマネージャーがWindows10のbcd
ストアに表示されるかどうかを確認しました
bcdedit /enum firmware
bcd
ストアにはLinuxブートマネージャーが含まれています。だから私は走った
bcdedit /set {bootmgr} path \EFI\systemd\systemd-bootx64.efi
昇格したコマンドプロンプトで。このコマンドは、WindowsブートローダーがWindows10を直接呼び出さずにLinuxブートマネージャーを呼び出すようにします。
これは私の問題を解決します。これで、同じHDD上にWindows10とArchLinuxのデュアルブートができました。