BOOT.confファイルはどのような目的に使用されますか?

BOOT.confファイルはどのような目的に使用されますか?

RHEL 8用のカスタムインストールISOを生成しようとしています。

マウントISOには、ディレクトリに2つのファイルがありますEFI/BOOT/。このコマンドは、2つの間に何の違いも表示しません。私はこれについて議論された場所をどこにも見つけることができません。BOOT.confgrub.cfgdiffBOOT.conf

インストール中にどのような用途に使用されますか?またgrub.cfg、同じ変更を行う必要がありますかBOOT.conf

答え1

RHEL 9インストールメディアでは、これらの重複はもはや存在しません。 no more EFI/BOOT/BOOT.conf, only EFI/BOOT/grub.cfg.

を実行するとgrep -i BOOT.conf EFI/BOOT/*.efiヒットアイテムはありませんが、実行すると、とのgrep -i grub.cfg EFI/BOOT/*.efi両方に一致するアイテムが見つかります。これは、GRUB EFI バイナリが表示する代わりに探していることを示します。grubx64.efigrubia32.efigrub.cfgBOOT.conf

また、これらのGRUBバイナリは、ローカルインストールメディアからの起動にのみ適用される起動メニューを定義する*.efiこのファイルを読む必要がある理由がある唯一のものです。カーネルブートオプションは、initramfsのインストーラコードにローカルインストールメディアを見つけるように指示するためです。特定のボリュームラベルを持つファイル。grub.cfginst.stage2=hd:LABEL=RHEL-8-8-0-BaseOS-x86_64

上記のすべてに基づいて、私の理論は、これがインストールBOOT.confイメージを生成するために使用されたスクリプトの小さなバグによるものにすぎません。


ファイルの内容がまったく異なるため、isolinuxディレクトリの状況は異なるようです。isolinux.cfggrub.conf

ISOLINUXブートローダーには独自の構成構文があり、GRUB用の構成ファイルを理解していません。

また、isolinux/grub.confファイルの内容全体は次のとおりですEFI/BOOT/grub.cfg

#debug --graphics
default=1
splashimage=@SPLASHPATH@
timeout 60
hiddenmenu
title Install Red Hat Enterprise Linux 8.8
        findiso
        kernel @KERNELPATH@ @ROOT@ quiet
        initrd @INITRDPATH@
title Test this media & install Red Hat Enterprise Linux 8.8
        findiso
        kernel @KERNELPATH@ @ROOT@ rd.live.check quiet
        initrd @INITRDPATH@

変数@SPLASHPATH@と:に注意してください@KERNELPATH@@ROOT@@INITRDPATH@非常に最小限のGRUB構成ファイルを生成するためのテンプレートISO9660ベースのインストールメディアを起動します。もちろんいいえ有効なGRUB構成ファイルのようです。

おそらく、RedHatはインストールメディアからBIOSベースのブートのためのブートローダーとしてGRUBを使用する可能性をテストしていましたが、後でそれをしないことを決定し、以前のメジャーリリースと同様にISOLINUXを引き続き使用した可能性があります。プロセスが変更されたときにGRUB設定を作成するために使用されるテンプレートファイルは、誤ってディレクトリに含まれていますかisolinux

技術的にはこれはバグですが、ファイルが小さく、現在の場所では完全に無効で無害なので、修正する優先順位は非常に低いです。

関連情報