背景画像マニュアル grub.cfg

背景画像マニュアル grub.cfg

起動可能なフラッシュドライブにgrubの背景イメージを手動でインストールしようとしています。ドライブはISOからのみ起動し、OSがインストールされていないため、スクリプトを利用してupdate-grubこれを行うことはできず、/etc/default/grub編集に関する投稿が私の場合には適用されません。私は見たGRUBに背景画像を追加するには?しかし、私が言及した理由ではうまくいきません。すべてのISOを正常に起動しましたが、まだ背景画像の適用に問題があります。これは私のgrub.cfgの関連部分であり、残りはすべてうまく機能するメニュー項目です(テキストモードに置き換えます)。

set timeout=10
set default=0
set root=(hd0,msdos1)
### BEGIN background setup ###
function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}
load_video
insmod gfxterm
insmod part_msdos
insmod png
GRUB_TERMINAL=gfxterm
GRUB_GFXMODE=auto
GRUB_BACKGROUND="splash.png"
### END background setup ###

背景画像は、GRUB 2.02 Beta2を使用する640x480 PNGファイルです(GIMPを使用してサイズ変更しました)。

さらなる研究によると、この部分は次のとおりです。

GRUB_TERMINAL=gfxterm
GRUB_GFXMODE=auto
GRUB_BACKGROUND="splash.png"

更新スクリプトで使用されている変数を使用すると、これらの変数は/etc/default/grubに属し、grub.cfgにそのように表示されないため、この行は少なくとも間違っていると確信しています。

編集:少し調整しましたが、まだ満足していません。これはペーストビン関連セクション(関連のないメニュー項目はテキストモードでうまく機能し、問題にならないので除外しました。)

ベストアンサー1

grub.cfgメニューの前に次の行を追加する必要があります。これはカスタマイズされており、使用しないため、update-grub問題はありません。

 background_image /boot/Your_image.png

これで、ディストリビューションに異なる背景を提供するには、その行をメニューに追加するだけです。たとえば、これは私のメニューが始まる部分です。ご覧のとおり、メニューの前にデフォルトの背景があるため、grubの起動時に背景があり、その後に各メニュー/サブメニューに独自の背景があります。

background_image /boot/SolusOS-splash.png

set color_normal=white/black
set color_highlight=black/white

submenu "Debian 8.1 -->"{
     submenu "Debian 8.1 i386 -->"{         
            background_image    /boot/DebianLava-splash.png         
            set iso=/boot/ISOs/debian-live-8.1.0-i386-gnome-desktop.iso
          ....

編集:私の検索パスエントリは次のとおりです。 (uuidは私のUSBのIDです。)これが問題であるかどうかはわかりません。

set boot_uuid=D042-8A53    
set root_uuid=D042-8A53

search --fs-uuid $root_uuid --set=root
search --fs-uuid $boot_uuid --set=grub_boot
if [ $boot_uuid == $root_uuid ]
then
    set grub_boot=($grub_boot)/boot
else
    set grub_boot=($grub_boot)
fi

おすすめ記事