要約

要約

要約

WindowsブートマネージャーにGrubブートエントリを追加することはできません。
しかし、Rod SmithのrEFIndのようなサードパーティのブートマネージャーを使用すると、同様のことを実現できます。インストール手順は、この要旨
しかし、Acerのノートパソコン(3台のAcerでテスト済み)どうやらブート エントリが忘れられ、ESP に refind/grub が存在するにもかかわらず、Windows ブート マネージャーのみが読み込まれます。
Acer ラップトップの UEFI メニューには、UEFI メニューにパスワードを設定した場合にのみ使用可能になる 2 つの隠し設定があります。これにより、RSA キーでブート マネージャーに署名しなくても、サード パーティのブート マネージャーを TRUSTED としてマークできます (gist や他の多くの場所で示されているように)。パスワードが設定されている場合は、セキュア ブートを無効にすることもできます。UEFI が有効になっている場合、TRUSTED ブート マネージャーのみが UEFI によってロードされ、その他はすべて無視されます。そのため、Windows のみが起動し、UEFI がブート エントリを忘れるという誤った考えが生まれます。
別の方法としては UEFI を無効にすることですが、解決策があるのになぜセキュリティを自分で下げるのでしょうか?

長い話

私の古いラップトップは MBR スキームを使用していましたが、Ubuntu のパーティション (MBR ではない) に GRUB をインストールし、Windows ブート マネージャーに GRUB のブート エントリを追加することができました。これにより、GRUB だけでなく Windows ブート マネージャーも維持できるようになりました。

私の新しいラップトップには、UEFI がプリインストールされた Windows 10 が付属していました。次のパーティションで Ubuntu Gnome 17.04 をインストールしました。

/boot ext4 1GB
/ (root) ext4 25GB
/home ext4 400GB

これで /boot に grub がインストールされると思いました (インストールされるかもしれませんが、わかりません)

インストールは成功しました

Windows を再起動し、EasyBCD 2.3 (最新) を実行して、Windows ブート マネージャーに grub のブート エントリを追加しました。しかし、そのオプションはグレー表示されていました。EasyBCD は、セキュア ブートが有効になっているため、一部の機能がサポートされていないと表示しています。別の Windows OS のブート エントリを追加するオプションは表示されますが、Linux OS では同じオプションがグレー表示されています。

Windows ブート マネージャーと GRUB の両方を別々のパーティションに保存しておき、古いラップトップと同じように Windows ブート マネージャーから GRUB にアクセスできるようにしたいと考えています。

なぜ?

  1. 18.04 LTSにアップグレードするか、OSに同梱されているカーネルをメインラインカーネルにアップデートする予定です
  2. GRUB画面は、私のラップトップを使っている兄弟にとってはかなり怖いです

アップデート1: UEFI ブート メニュー (F12 キーから) には、Windows 用のエントリが 1 つだけ表示されます。grub が /boot または /EFI/Ubuntu に存在する場合は、ブート メニューに表示されるはずです。/boot パーティションなしで再インストールを試みましたが、それでもうまくいきませんでした。

編集: これは、i5-5200U で実行されている Acer V3-574G-54VY です。システム情報には次のように表示されます。

BIOS Version : Insyde Corp V1.35, 30-11-2015
BIOS Mode : UEFI

UEFI ファームウェア (システム情報の「BIOS バージョン」) V1.1 が付属していました。2 か月前に V1.35 にアップデートしました。

アップデート2:私は@RodSmithのブログに従って、UEFIブートメニューにgrubが表示されない問題を修正しました。efibootmgr現在、デフォルトのブートローダーとして GRUB (SecureBoot が有効になっている shim 経由) を使用しています。しかし、私の質問はまだ回答されていません。Windows ブート マネージャーに Grub/Ubuntu ブートローダー エントリを追加するにはどうすればよいですか?Windows ブート マネージャーはこのような構成をサポートしていますか? Windows ブート マネージャーがデフォルトだったときは、起動のたびに EFI の GRUB ブート エントリが削除されていたので、今は疑問に思っています。

注目すべきもう 1 つの点は、Windows の高速スタートアップを無効にしなかったことです。おそらく、Ubuntu インストーラーが GRUB をインストールできなかったためです (または、GRUB はインストールされましたが、高速スタートアップのために最初に読み込まれた Windows ブート マネージャーが起動時に削除しました)。

アップデート3:Windows を再起動すると、GRUB ブート エントリが削除され、再びデフォルトになりました。これで、元の状態に戻りました。

アップデート4:Windowsから起動順序を設定しましたbcdeditそして、ブート順序はブート間で維持されます。セキュアブートを無効にする必要がありました。UEFIでスーパーバイザーパスワードを設定すると、セキュアブートのトグルがグレー表示になります。UEFIメニューに行くたびにそのパスワードを入力する必要があります。これは、セキュアブートが無効になっていると、どのアプリでもUEFI設定を変更できないことを意味している可能性があります。私のUEFIにバグがあるとは思いません。他のベンダーよりもかなり高度で安全です。

答え1

まず、最新の EFI ベースのコンピューターは、古い BIOS ベースのコンピューターとはまったく異なる方法で起動することを認識する必要があります。間違った BIOS モードのメンタル モデルに悩まされ、それがあなたを迷わせているのではないかと思います。次の記事を読むことをお勧めします。

確かに、これは長い読書リストです。1 つだけ読む時間があれば、1 番目か、場合によっては 2 番目をお勧めします。3 番目と 4 番目は、インストールに関するより実践的なチュートリアルですが、期待どおりに動作していないとしても、すでに動作しているシステムがあります。

この議論で特に重要なのは、EFIではブートローダが通常のファイルとして保存されることです。EFI システム パーティション (ESP)。デフォルトで起動されるブートローダは NVRAM に保存され、sudo efibootmgr -vUbuntu では で表示でき、他のオプションを使用して に変更することができますefibootmgr。(man efibootmgr詳細については、通常の簡潔な man ページ スタイルで と入力してください。)/bootパーティションには、Linux カーネル、GRUB 構成およびサポート ファイル、およびその他のブート関連ツールがいくつか保存されていますが、メインの GRUB バイナリである は、 Ubuntu ではgrubx64.efiにマウントされている ESP に保存されています/boot/efi

邪魔にならないように、Windows必要WindowsブートローダーとUbuntu必要Linuxブートローダー。後者はデフォルトではGRUB 2ですが、他のいくつかのものでもかまいません。Linux 用の EFI ブートローダー。ブーツの役割ローダOS カーネルをメモリにロードして実行を開始することです。

ブーツマネージャー、一方、メニューを表示したり、起動する OS をユーザーが選択できるようにしたりします。GRUB と Windows ブート ローダーはどちらもブート マネージャー機能とブート ローダー機能を提供しますが、ブート ローダー機能のみ、またはブート マネージャー機能のみを提供するプログラムもあります。実際、すべての EFI は何らかのブート マネージャーを提供しますが、場合によっては非常に原始的であるため役に立たないこともあります。

EFI モードでも Windows ブート マネージャーを構成して GRUB を起動できると聞いたことがありますが、その方法の詳細はわかりません。このアプローチを調べたい場合は、Windows フォーラムで質問してみてください。

GRUB UIが気に入らない場合は、別のブートマネージャを検討するのも良いでしょう。設定さえしてしまえばそれほど難しくないものとして、私のrEFInd ブートマネージャー好みに合うかもしれません。グラフィカルなビュー(キーボード操作ですが)を提供するので、テキストモードのGRUBほど威圧感はありません。インストール後にrEFIndの設定を微調整したくなるかもしれません。構成そしてセキュアブート特にドキュメント。

関連情報