web-dev-qa-db-ja.com

Windows10はGrubでは表示されません

コンピューターにエレメンタリーOSがありました。ハードドライブをワイプし、Windows10を問題なくインストールしました。次に、使用していた実際のパーティションを縮小し、その空のパーティションにPardusをインストールしました。それをインストールするには、BIOSでセキュアブートを無効にする必要がありました。それも正しくインストールされました。

最終的にコンピューターを起動したとき、GRUBメニューにはWindows10オプションがありませんでした。奇妙なことに、BIOSからセキュアブートを有効にすると、Pardusを起動できないため、Windowsで起動します。

これまで、他のOSが見つからなかったos-proberを試しましたが、 このリンク を試しましたが、ntldr not foundまたはそのようなものが表示されました。 ntldr /bootmgrchainloader +1に置き換えたところ、無効なEFIファイルパスと表示されました。 「MicrosoftBasicData」という名前の最大のパーティションと「EFISystem」という名前のパーティションの両方のUUIDを使用しようとしました。どちらも同じエラーを表示します:「EFIファイルパス」。

これが私の/etc/grub.d/40_customです:

# Skipping the initial part of the file
menuentry "Windows 10" --class windows --class os {
   insmod ntfs
   search --no-floppy --set=root --fs-uuid FA53-79CA
   chainloader +1
}

これが私のfdisk -lの結果です:

Disk /dev/sda: 465,8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: # some hex identifier here

Device         Start       End   Sectors   Size Type
/dev/sda1       2048   1023999   1021952   499M Windows recovery environment
/dev/sda2    1024000   1226751    202752    99M EFI System
/dev/sda3    1226752   1259519     32768    16M Microsoft reserved
/dev/sda4    1259520 490168319 488908800 233,1G Microsoft basic data
/dev/sda5  490168320 968570879 478402560 228,1G Linux filesystem
/dev/sda6  968570880 976771071   8200192   3,9G Linux swap

Windowsブートローダーを削除したのではないかと思っていますが、前述したように、BIOSからセキュアブートを有効にするとWindowsが起動します。

2
Haggra

まず第一に、Windowsが起動するという事実は、UEFIがあり、GRUBの代わりにマザーボードの起動セレクターを使用してWindowsを起動できることを示しています。通常、起動中はF2またはF12です。

あなたのWindows10メニューエントリはを使用しています

chainloader +1

これは、ルートデバイスの最初のセクターをロードすることを意味します。システムはレガシーBIOSではなくUEFIであるため、これは機能しません。

代わりに、ルートデバイスをEFIシステムに設定し、Windows用のEFIをチェーンロードします。

insmod part_gpt
insmod search_fs_uuid
insmod chain
search --no-floppy --set=root --fs-uuid FA53-79CA
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi

また、UUIDがblkidで正しく、EFIシステム用であることを確認してください。

GRUBはWindowsを自動的に検出する必要がありますが、RAIDディスクでは検出されません。

3
jdwolf