GRUB2マルチLinuxデュアルブート(安全ブートとshimx64.efi)

GRUB2マルチLinuxデュアルブート(安全ブートとshimx64.efi)

私は、2つのLinuxディストリビューション、Windows、および複数のISOを含む最高のUSBスティックを作成しようとしています。

これまで、Windows、Ubuntu、Fedora Silverblueをディスクにインストールしました(インストールを高速化するために仮想マシンでテストしてきました)。マシンのUEFIブートメニューからすべてのオプションを表示し、そのうちの1つを正常に起動できます。 UEFI BIOSにすべてのオプションが表示されます。

FedoraまたはUbuntu GRUBメニューからWindowsを起動できますが、どちらも他のメニューから起動しません。 ここに画像の説明を入力してください。

最終的にISOファイルを起動したいので、GRUBから別のLinuxインストールをロードできるはずです。

私が試したこと:

セキュアブートを無効にする:

これはうまくいきますが、他の人のコンピュータで利用できるようにしたいので、セキュアブートを無効にするのが気に入らない可能性があるため、使用したくありません。

チェーンローディング:

GRUBはチェーンローダを介してWindowsをロードするので、Linuxでも同じことができると思いました。

FedoraのGRUBメニューでこれを実行すると、chainloader /EFI/ubuntu/grubx64.efi同じシムエラーが発生します。

これによりchainloader /EFI/ubuntu/shimx64.efi(FedoraのGRUBメニューから)UbuntuのGRUBメニューに移動できます。しかし、実際にUbuntuを起動しようとすると、まだshimエラーが発生します。

正しく理解したら

私が正しく理解したなら、これはshimx64.efiUEFI BIOSが実際にロードされることです。このファイルには、単一コアのセキュアブート情報のみが含まれていますか?

shimx64.efi別のGRUBメニューにロードするリンクを選択したときにUEFIを再ロードする方法はありますか?

shimx64.efi長すぎます。セキュアブートが有効になっている同じGRUBメニューから2つのLinuxディストリビューションをダブルブートできるかどうかを説明できますか?

ありがとう、ウィル

ベストアンサー1

私が正しく理解した場合、shimx64.efiはUEFI BIOSが実際にロードすることです。このファイルには、単一コアのセキュアブート情報のみが含まれていますか?

ほとんど正しいですが、正確ではありません。マイクロソフトは各リリースのshimバージョンに署名し、shimにはそのリリースのセキュアブート公開鍵が含まれています。 shimを使用すると、システムの起動に許可されているキーのリストに、ディストリビューションのセキュアブートキーが一時的に(非永続的に)追加されます。 ShimにはMOK(マシン所有者キー)を追加することもできます。

したがって、Fedoraをロードすると、セキュアshimx64.efiブートがFedora署名コンテンツを受け入れることができます。その後、ロードされ、grubx64.efiFedoraで署名され、セキュアブートファームウェアで許可されるようになりました。 Fedoraのカーネルがロードされると、カーネルファイルはgrubx64.efiFedoraによって署名され、セキュアブートを介してカーネルコードを実行できます。

カスタムカーネルを構築するには、MOKを生成し、それを使用してカスタムカーネルに署名する必要があります。また、カスタムまたはサードパーティのカーネルモジュールを構築するには、セキュアブート「契約」の一部が署名されていないカーネルコードを受け入れないため、MOKで署名する必要があります。したがって、ブートローダはカーネルの署名を確認し、セキュアブートが有効になっている場合は、カーネルは各モジュールの署名を確認する必要があります。

あなたディストリビューションのセキュアブートキーでは何も署名できません。プライベートディストリビューションセキュリティブートキーの一部 - このキーは、ディストリビューションセキュリティ担当者が非常に安全に保管できます。

インストールしてあなたの他の人のコンピュータでMOKを使用することは、セキュアブートを無効にするのと同じくらい悪いです。何もない彼らのシステムで。

明らかに1つのshimをロードした後、理論的にはshimの他のコピーをチェーンロードすることは可能であるべきですが、shimのソースコードの説明によると、これは完全にマイナーではありません。

おすすめ記事