web-dev-qa-db-ja.com

Windows10を搭載したデュアルブートArchLinux

私の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で手動で起動順序を編集しました。しかし、問題は同じです。再起動後、起動順序が元に戻ります。

2
Irshad

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のデュアルブートができました。

5
Irshad