web-dev-qa-db-ja.com

WindowsブートマネージャーをメインローダーとするUEFIシステム上のUbuntu 13.04

私の古いラップトップ(レガシーBIOS、MBRディスク)では、これは完全に機能していました:

  • コンピューターの電源を入れて、Windowsブートマネージャーを表示します

  • EasyBCD(またはBootPartなど)を使用してBCDメニューにオプションを追加し、GRUBを起動してからUbuntuを起動できるようにします

UEFIモードでもレガシーモードでも、新しいラップトップ(UEFI、GPTディスク)でこれを行う方法がわかりません。

現在、ラップトップにUbuntuをインストールしました(さらには起動しました!)が、外部GRUB(USBフラッシュドライブ)の助けを借りてのみです。

UEFIラップトップのWindowsブートマネージャーのオプションとしてGRUBを追加するにはどうすればよいですか?

(いいえ、プライマリブートローダーを変更したくないので、いいえ、WindowsブートローダーをGRUBで上書きしたくありません。)

2
Mehrdad

知りません、できません。私の知る限り、Windowsブートローダーは、Windows以外のEFIブートローダーを起動する手段を提供していません。ただし、これについて間違っている可能性があります。 Windowsブートローダーに関する知識が限られていることは認めます。

代わりに、多くの EFIブートローダーとLinux用ブートマネージャーのいずれかを構成して 、ブート選択ジョブを処理できます。すべてが正常に動作すると、GRUBがこのジョブを実行できます。ただし、バージョン13.04の時点では、Ubuntuはインストール時にデュアルブート用にGRUBを正しくセットアップしません。 EFIバグによって引き起こされる他の問題もあります。 Ubuntu GRUB構成の問題を回避するには、2つの解決策が最も簡単です。

  • システムで Boot Repair を実行します。これが機能する場合、GRUBを再インストールして再構成し、Windowsを起動できるようにします。
  • rEFIndブートマネージャーをインストールします。 これは、UbuntuでDebianパッケージをインストールすることで最も簡単に実行できます。 (ただし、ESPが/boot/efiにマウントされていることを確認してください。)rEFIndをインストールすると、GRUBをバイパスして、WindowsまたはLinuxを直接起動できるようになります。

これらのソリューションはいずれもWindowsブートローダーを完全に置き換えるものではありません。どちらも、Windowsブートローダーの前にbefore別のブートプログラム(GRUBまたはrEFInd)を実行するだけです。必要に応じてここで読むのをやめることができますが、これを理解するにはいくつかの背景が役立つ場合があります。

マルチブートコンピューターをブートする場合、ブートマネージャーを使用すると、通常はメニューから2つ以上のOSを選択できます。ほとんどのEFIには、扱いにくいが組み込みのブートマネージャーが含まれています。 rEFIndはブートマネージャーでもあり、GRUBにはブートマネージャーが含まれます。対照的に、ブートローダー、は、OSカーネルと関連ファイルをロードし、カーネルの実行を開始します。 EFIにはブートローダーが含まれていないため、すべてのOSmustが1つを提供します。 GRUBはLinux用のブートローダーです(Windows用ではありません)ブートマネージャーであることに加えて、Linuxカーネル(バージョン3.3.0以降)は独自のブートローダーとして機能でき、Windowsは独自のブートローダーを提供しますブートローダー。 rEFIndはnotブートローダーです; Linuxをブートするには、EFIスタブローダーまたは他のブートローダーに依存してカーネルをロードします。

したがって、GRUBはWindowsブートローダーではないため、WindowsブートローダーをGRUBに置き換えることはできません。ただし、GRUBは、ブートマネージャー機能を使用してWindowsブートローダーにチェーンロードできます。

5
Rod Smith

.efiブートローダーをWindowsブートマネージャーに追加した後でも可能ですが、変更は永続的であるため、少なくとも私のマザーボードでは非常に悪い考えです。 WindowsブートマネージャーからUbuntuを起動した後、UEFIブート構成を直接編集するため、常にUbuntuを起動します。

また、これを達成するには、BCDファイルを手動で編集する必要があります。この質問に対する受け入れられた答えを確認できます: Windows 8.1 UEFI x64はUEFIイメージを起動できません 詳細については。

シナリオは、WindowsブートマネージャーがUEFIの最初のブート選択です。

ファームウェアから起動デバイス選択キー(DellではF12)をいつでも使用できます。これにより、インストールされているすべてのOSのリストが起動の選択肢として表示されます。

起動プロセスが速すぎる場合は、Windows起動メニューを常に10秒というタイムアウトのテキストスタイルに設定し、そこから(DellのESCキーが一般的です)を使用してファームウェアブート選択にエスケープできます。

Windows 7/8/8.1で、Linux(Ubuntu)から直接起動したい場合は、UEFIにインストールされたOS(Windows、Linux)を直接起動できる BootNext というツールを使用できます。

0
snayob