UEFI デュアルブートの問題

UEFI デュアルブートの問題

ここでこの質問をたくさん受けたと確信していますが、私に合った答え/解決策が見つからないようです。

Samsung 850 SSDにWindows 10をインストールし、Samsung 750 SSDにLinux mint 19.3をインストールしました。いくつかのソリューションで述べたように、BIOSのSATA構成をAHCIに設定しました。

BIOSを「UEFIのみ」または「UEFIとレガシー」に設定すると、起動優先順位に関係なくWindowsで起動します。 BIOS を「レガシーのみ」に設定すると、ブート優先順位に関係なく Linux でブートされ、grub のどこからでも Windows ドライブを認識できません。

この新しいマザーボード(ASUS TUF GAMING X570-PLUS)を使用する前に、EasyBCDを使用して私に合ったデュアルブートを管理しました。私の目的のためにこれを使用したり、地面の虫を使用したりすると、騒ぎを避けることはありません。私が望むのは、起動時にWindowsがデフォルトになり、明らかにLinuxがオプションになることです。

私は過去1日の間に私と同様に聞こえる可能性のあるすべてのシナリオを見つけようとしました。

答え1

解決策

私は伝統的なUbuntuブートを放棄します。 EFI は複数のブートローダを並べるように設計されています。最も簡単な方法は、WindowsドライブのEFIパーティションにgrubをインストールし、「UEFIのみ」で起動することです。

これを行うには:

  1. Linuxで起動
  2. EFIパーティションを見つけます。sudo blkidこれを使って正しいものを見つけることができます。私のもの/dev/sdb2
  3. EFIディレクトリをにマウントし、/boot/efi必要に応じて作成します。

    sudo mkdir /boot/efi
    # replace /dev/sdb2 with your EFI partition
    sudo mount /dev/sdb2 /boot/efi   
    
  4. grub-efiをインストールします。私はこれが標準の64ビットIntel CPUであると仮定します。

    sudo apt-get install grub-efi-amd64
    
  5. EFIパーティションにgrubをインストールします。

    sudo grub-install /dev/sdb2
    
  6. 任意に選択できる:EFIファイルが見つかる場所をBIOSに知らせる必要があるかもしれません。手動で追加するには、BIOS設定に移動する必要があります。メモリでは、mintはUbuntuと同じ設定を使用するため、Grubはそれを作成する必要がありますEFI/ubuntu/grubx64.efi。ただし、次のように確認できます。

    sudo ls -lh /boot/efi/EFI/ubuntu/
    
  7. UEFIを使用してすべてが設定されたら、update-grubWindowsブートローダが検出されたことを確認できます。これにより、Windowsを起動するメニューオプションが提供されます。したがって、Linuxを再起動して次のように呼び出します。

    sudo update-grub 
    

議論する

BIOSの動作は難しいです。これは、ブートロジックの実装が非常に異なるさまざまなBIOSがあるためです。

レガシーディスクはUEFI +レガシーには表示されず、レガシーにのみ表示されると言われました。あなたのBIOSでは、UEFI + Legacyこれが「UEFI」と解釈される可能性があると思います。または「UEFI」の代わりに「レガシー」そして遺産」。

このようなマルチディスクの設定に問題が発生することはまれではありません。反対側にローンの答え、単一のディスクを使用する場合よりも複数のディスクを使用する場合、ブートの問題が多く発生します。 「レガシーのみ」の時代には、複数のディスクが大きな利点でした。ただし、UEFI により問題が発生する可能性があります。たとえば、複数のディスクに複数のEFIパーティションが分散している場合、一部のBIOSはそれを認識しません。最初のEFIパーティションを見つけて検索を中止します。

UEFIは、複数のブートローダを並べて使用できるように設計されています。すでにWindows用のEFIがあるので、Grubもインストールすることをお勧めします。

答え2

ディスクが1つしかなく、そのディスクにwin10とlinuxの両方をインストールしようとすると、WindowsブートマネージャがGRUBまたは他のブートマネージャと正しく機能しなくなり、問題が発生する可能性があります。

一方にはWindowsのみがあり、もう一方にはLinuxのみを持つ2つのディスクがあることを示しているようです。私はこれがブートマネージャプログラムとディスクブートパーティションを完全に分離して維持するための最良のアプローチだと思います。だからあなたはそれをあなたに任せることができますマザーボード起動するディスクを選択すると、その後すべてがうまく機能します。あるOSおよび/またはブートマネージャは他のOSおよび/またはブートマネージャを知らないため、競合することはできません。

2番目の(好ましい)ケースはマザーボードの設定/機能によって異なります。

  • MBRとdosパーティションスキームを使用してディスクをフォーマットした場合は、レガシーパーティションスキームを有効にする必要があります。バイオスこれらのディスクを認識できるようにモードを使用すると、UEFIだけは使用できません。
  • 通常、レガシーモードにはUEFIも含まれているため、無知の場合は通常これが最も安全な設定ですが、UEFI ONLY設定を認識するには、EFIブートパーティションを持つGPTでフォーマットされたディスクが必要です。

Win10は間違いなくUEFIですが、Linuxは両方である可能性があるため、Linuxが特定のディスクにインストールされているか、LinuxディスクがdosパーティションスキームとMBRでフォーマットされているのか、GPT CompleteパーティションとEFIパーティションでフォーマットされているのかを識別する必要があります。

両方のディスクにEFIパーティションがある場合にのみ、マザーボードをUEFIに設定できます。

この時点でマザーボードの設定を見てください。ブートマネージャそれとも何と呼んだのか。私はASROCKマザーボードを持っており、その機能を有効にした後、デフォルトで私のwin10ディスクから起動しますが、N秒以内に選択すると別の[linux]ディスクを選択できます。例示的な画像は以下の通りである。https://i.stack.imgur.com/kUZuu.jpg

レガシーモードを含むUEFIでは、マザーボードに任意のディスクを任意の順序で起動するように指示するだけです。それよりも複雑である必要はありません。その後、ディスクが起動すると、単一のディスクシステムで常に/必要になるように、そのブートパーティションとブートマネージャが引き継がれます。

関連情報