Debian Lenny (および Debian の以前のバージョン) では、Linux の起動時に、GRUB の背景が黒の青いボックスが表示されることにうんざりしているかもしれません。しかし、Debian Squeeze から始めて、GRUB は見栄えの良い背景画像を追加します (退屈な背景色よりも優れています)。
この記事では、GRUB の背景イメージを変更する方法について説明します。以下の手順は、grub-1.98 を使用した Debian Squeeze でテストされています。ただし、これらの手順は他の同様の Linux ディストリビューションでも機能するはずです。
GRUB 背景画像の選択
GRUB 2 は、背景に PNG、JPG/JPEG、および TGA 画像を使用できます。画像は次の仕様を満たす必要があります:
- JPG/JPEG 画像は 8 ビット (256 色) である必要があります
- 画像はインデックスなし、RGB である必要があります
デフォルトでは、デスクトップ ベース パッケージがインストールされている場合、上記の仕様に準拠するイメージは /usr/share/images/desktop-base/ ディレクトリに配置されます。
GRUB スプラッシュ イメージの検索順序
grub-1.98では、表示するスプラッシュ画像は以下の順番で検索されます。
<オール>したがって、上記のいずれかを優先順に使用して、GRUB に独自の画像を表示させることができます。以下は、私のシステムの /etc/default/grub ファイルの内容です。
# If you change this file, run 'update-grub' afterwards to update # /boot/grub/grub.cfg. GRUB_DEFAULT=0 GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian` GRUB_CMDLINE_LINUX_DEFAULT="quiet" GRUB_CMDLINE_LINUX="" GRUB_BACKGROUND="/usr/share/images/desktop-base/moreblue-orbit-splash.png"
上記の方法のいずれかを使用して変更を行ったら、以下に示すように必ず update-grub コマンドを実行してください。
# update-grub Generating grub.cfg ... Found background: /usr/share/images/desktop-base/moreblue-orbit-splash.png Found background image: /usr/share/images/desktop-base/moreblue-orbit-splash.png Found linux image: /boot/vmlinuz-2.6.32-5-amd64 Found initrd image: /boot/initrd.img-2.6.32-5-amd64 done
これで、マシンを起動すると、カスタマイズされたイメージが GRUB に表示されます。
GRUB について言えば、以前に説明したように、GRUB をパスワードで保護することもできます。
GRUB の前面とメニューの色を変更する
これで、独自のイメージを GRUB に配置しました。ただし、メニューとそのエントリはデフォルトの色で表示されます。
以下は、変更可能な 3 つの主な GRUB カラー設定です。
- menu_color_highlight => ハイライトされたメニュー エントリの色とメニュー ボックス内の背景
- menu_color_normal => 選択されていないメニュー エントリの色とメニュー ボックス内の背景
- color_normal => メニュー ボックスの外側のテキストと背景の色
色を指定するための構文は次のとおりです:
menu_color_highlight=fg-color/bg-color
次の色が grub でサポートされています:
black blue brown cyan dark-gray green light-cyan light-blue light-green light-gray light-magenta light-red magenta red white yellow
色を変更するには、「/etc/grub.d/05_debian_theme」を開き、次の行を見つけます:
if [ -z "${2}" ] && [ -z "${3}" ]; then echo " true" fi
そして、それらを次のように置き換えます:
if [ -z "${2}" ] && [ -z "${3}" ]; then # echo " true" echo " set color_highlight=red/green" echo " set color_normal=light-cyan/black" fi
color_normal にある「黒」を変更しないでください。変更すると、メニューが表示されている領域で画像が透過しなくなります。
この変更後、「update-grub」を実行し、システムを再起動します。表示されるフォントの色が変わることに気付くでしょう。上記の変更をシステムに加えた後、GRUB 画面は次のようになりました:
GRUB の色を試す
どの色を選択すればよいかわからず、試してみたい場合は、grub コマンドライン自体から実行できます。
<オール>grub> set color_highlight=red/green grub> set color_normal=light-cyan/black