用語:ESP =私のFAT32 EFIパーティション。
私が欲しい:
- ESPリンクにスタンドアロンGRUBをインストールすると、ディストリビューションのルートファイルシステム()に
/
別のGRUBブートローダがロードされます。現在、私のパーティションにはGRUBがインストールされていない複数のディストリビューションがあります。それぞれは独自のext4に完全にインストールされます/
。どちらも自分だけのセカンダリブートローダがあってほしいです。 - OSでgrub.cfgを使用してデフォルトのESP GRUBを再起動/再ロードすることも許可されています。効果的にチェーンがロードされます。
私が試したこと:
- 私が見つけた例には、GRUB2からGRUBレガシーを起動するか、その逆に起動することが含まれますが、UEFIファイルと.efiファイルは使用しません。 GNU GRUB ドキュメントには UEFI についての言及さえなく、Arch/Ubuntu/Gentoo wiki は、基本(非チェーンローディング)インストールを設定するために必要な最も基本的な情報を提供します。
これまで:
grub-install
grub-mkconfig
.Test bootを使ってESPにGRUBをインストールしました。これは、マイ/boot/grub
フォルダが空で、起動中/起動後にESPをインストールする必要がないことを意味します。- 2番目のグラブをインストールしようとしましたが、EFI部分をインストールできず、ターゲットがEFIパーティションではないと文句を言いました
/boot/efi/
。しかし、すでにプライマリGRUBがインストールされているので、セカンダリGRUBがext4 rootfsにあることは重要ではありません。そうですか? Grubはext4を読むことができます。私もこのオプションを試しました。/boot/grub/
grub-install
--force
grubx64.efi
したがって、インストーラが次にインストールできると説得する方法を見つける必要があるようです/boot/EFI
。
grub-install
基本的なGRUBをどのようにインストールしたのか疑問に思う人がいる場合は、ESPに関連する正しいオプションを使用することが問題でした。
ベストアンサー1
別の方法があります。 GRUBに、他のLinuxディストリビューションなどの他のセカンダリgrub.cfgをロードするように指示するメニュー項目を作成できます。
たとえば、Gentoo Linuxで起動し、GRUB2をMBRにインストールしました(マシンはEFIに比べて古すぎます)。
次に、独自に grub.cfg を生成するように設定した NixOS をインストールしました。/開始する(Gentooとは別に/開始する)しかしいいえGRUBをインストールします。
明確にするために、grub-install
これはNixOSではなくGentooで実行されます。
次に、NixOSを起動できるように、次のエントリに追加しました。/etc/grub.d/40_customGentooから:
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
menuentry 'NixOS' --class gnu-linux --class gnu --class os $menuentry_id_option 'nixos-0aca58bc-8fdb-4a07-aa2f-56406bcf19b7' {
set root='hd0,msdos4'
configfile /nixos/root/boot/grub/grub.cfg
}
コアはconfigfile /nixos/root/boot/grub/grub.cfg
ラインです。 GRUBに別のgrub.cfgをロードするように指示します。その後、grub-mkconfig
Gentooで実行して変更を適用しました。
今実行して選択するとニックOSフルGRUBインターフェイスは、オペレーティングシステムを起動できるNixOS grub.cfgを反映するように更新されます。チェーンローディングとは異なり、この構成はGRUBの単一インストールを使用し、単に2番目の構成を使用します。