自己生成にはgrub.cfg
いくつかあります。
if [ x$feature_platform_search_hint = xy ] ...
if [ x$feature_default_font_path = xy]...
if [ x$feature_all_video_module = xy ]...
過去にその機能が存在したかどうかを確認する作業であり、grub2を開発したときと同様に答えが間違っている可能性があると思います。しかし、それほど長い年月が経った後、彼らは偽物かもしれませんか?
私はもっと興味があり$feature_platform_search_hint
、それに基づいてここ、
このような事前定義された変数は、
feature_platform_search_hint
ビルド時に汎用モジュールにハードコードされており、ソースコードの研究以外にほとんど文書化されていません。現在のバージョンの grub では、これらの変数は常に y として定義されるため、これらの変数は特定の grub バージョンの特定の機能のサポートを表すように見え、複数のバージョンで動作する grub.cfg ファイルを作成するためにテストできます。
私が理解していないのは、自分で生成された項目がなぜgrub.cfg
そんなに複雑なのかということです。例えば、
$feature_platform_search_hint
現在と未来について心配する必要がありますか?手動で書くならメンテナンスフリーのGrub2メニュー、次のように自己生成されたgrub.cfgを繰り返す必要がありますか?
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt8 --hint-efi=hd0,gpt8 --hint-baremetal=ahci0,gpt8 23cbdbaf-9bc8-49d0-a483-1ce445cf6fb4
else
search --no-floppy --fs-uuid --set=root 23cbdbaf-9bc8-49d0-a483-1ce445cf6fb4
fi
まあ、私はいつも--hint
パラメータを使いますか?
ベストアンサー1
次から渡されたここ:
関数のリストは
features
グローバル変数として保持されます。normal/main.c
。feature_platform_search_hint
GRUB 2.00から使用可能(2012年発売)(10年前)。したがって、この機能の条件付きコードチェックは、すべての最新のLinuxディストリビューションでは意味がありません。執筆時点で(2019年9月27日)、最新のアドインは
feature_timeout_style
2.02-beta1から利用可能です。
もう一度言う、「この機能の条件付きコードチェックは、すべての最新のLinuxディストリビューションでは意味がありません。」。