PCで遊んだ日々の備忘録

Making PC and Customization PC

GRUB メニュー と テーマ の設定

ブートローダー GRUB 設定 のページでは デフォルトのメニューを設定する方法を紹介しました。今回は、メニューの背景画像とユーザーインターフェースのテーマをカスタマイズしてみました。(2021年2月)

下の画像は VirtualBox 上で Ubuntu 20.04LTS の GRUB を起動している動画です。

注|再生時間はカット編集しているため実際とは異なっています。字幕スーパーは管理人が付け加えたものです。

カスタマイズに使用している背景画像とテーマは GNOME-LOOK.ORGGitHub に公開されているものです。

なお、当ページで GRUB とは GRUB2(GRand Unified Bootloader version 2)のことを示します。

参考


メニュー 背景画像 の 設定

下記の条件を満たす画像を用意して任意のディレクトリに配置しておきます。

  • フォーマット:png, jpg, tga の何れか(推奨は png)
  • 解像度:モニター解像度を推奨(デザイン次第)

今回は、既に GRUB用の背景画像やテーマが無数に公開されているので、その中から「starfield」テーマの背景画像を使ってみました。配布元のリンクはページ冒頭の GitHub です。

下の画像は、デフォルトの GRUBメニュー画面と背景画像を適用したスクリーンショットです。

デフォルトの GRUBメニュー

デフォルト の GRUBメニュー

背景画像適用後の GRUBメニュー

背景画像適用後 の GRUBメニュー

 

画像ファイルの配置場所はどこでもよいのですが、次の

  • /boot /grub /themes /starfield /
  • /usr /share /grub /themes /starfield /
  • /home /ユーザー名 /ピクチャ /starfield.png

くらいでしょうか。存在しないディレクトリは作成します。今回は /boot /grub / に置きました。

GRUB の設定

先ずは GitHub からテーマをダウンロードして解凍したフォルダーを置くディレクトリを作成しコピーします。

GNOME Terminal :
 $ sudo mkdir /boot/grub/themes/
 $ sudo cp -R /home/ユーザー名/ダウンロード/Starfield /boot/grub/themes/starfield

次に GRUB の設定ファイル /etc /default /grub を開いて

 $ sudo nano /etc/default/grub

次のコードを追記して保存します。

GNU nano editor :
GRUB_BACKGROUND="/boot/grub/themes/starfield/starfield.png"

そして

 $ sudo update-grub

を実行して画像が読み込まれたことを確認します。

GRUB の設定ファイル

GRUB 設定ファイル

読み込まれたことを確認

読込み確認

 

PCを再起動して表示されれば設定完了です。

▲ 目次へ

GRUB テーマ の 設定

GRUBテーマの設定も背景画像設定と同様に、ダウンロードした素材を任意のディレクトリに配置して /etc /default /grub ファイルにパスを記述し保存の後 update-grub コマンドを実行するだけです。

素材(フォルダー)の置き場所は メニュー背景画像の場合と同様にどこでもよいです。今回のテーマの場合も /boot /grub /themes / に置きました。

今回使用したテーマは GNOME - LOOK.ORG のStadby で、当ページ冒頭の動画がそれです。下の画像は、オリジナルのテーマと当ページ動画のスクリーンショットです。

オリジナルのテーマ「standry」

オリジナルのテーマ

当ページ動画のテーマ

当ページ動画のテーマ

ご覧のようにスケール感がまるで違いますね。

これはオリジナルの解像度が 1920x 1080 に対し動画の方は VitualBox をビデオキャプチャーしたもので GRUBメニューの解像度が 640x480 に固定されていて変更できないためです。

このままですと自動的にスケールダウンしてくれないのでメニューが切れてしまいます。そこでオリジナルのソースコードを VitualBox の解像度でも収まるように theme.txt ファイルを編集しました。

テーマの構造は 1つのフォルダーの中に装飾のパーツとなる画像ファイル、フォントファイル、そしてこれらを組み合わせて X - Y座標上に配置するための設計図となる theme.txt ファイルから成っています。

その theme.txt のパスを /etc /default /grub ファイルに記述して呼び出すようになっています。

GRUB の設定

先ずは GNOME - LOOK.ORG からテーマをダウンロードして解凍したフォルダーを置くディレクトリを作成しコピーします。

GNOME Terminal :
 $ sudo mkdir /boot/grub/themes/
 $ sudo cp -R /home/ユーザー名/ダウンロード/Standby /boot/grub/themes/Standby

次に GRUB の設定ファイル /etc /default /grub を開いて

 $ sudo nano /etc/default/grub

次のコードを追記して保存します。

GNU nano editor :
GRUB_THEME="/boot/grub/themes/Standby/theme.txt"

そして

 $ sudo update-grub

を実行して画像が読み込まれたことを確認します。

GRUB テーマの設定ファイル

GRUB テーマ設定ファイル

テーマが読み込まれたことを確認

テーマ読込み確認

 

PCを再起動して表示されれば 設定完了↑ です。

▲ 目次へ

GRUB 起動時のビープ音の設定

GRUBメニューが表示される前にパソコン内蔵のビープ音でメロディアスな楽曲を鳴らす設定です。マザーボードに直接繋ぐスピーカーが必要です。

実機の Ubuntu 18.04 LTS の /etc /default /grub に次のコードを記述し、試してみました。

GNU nano editor :
GRUB_INIT_TUNE="400 900 2 1000 2 800 2 400 2 600 3"

" tempo(1分あたりの拍数)- 400 [freq - 900、duration - 2] [freq、duration ] [freq、duration ]・・・ "

この意味不明な数字の羅列でメロディーを構成しているのですが、これではなんの曲かも分かりませんね。実はこのコードを再生してくれる便利な GRUB_INIT_TUNE tester なるものが公開されています。

Grub tune tester v0.4.0

GRUB_INIT_TUNE tester

 

この曲は「未知との遭遇のテーマ」で、再生時間は 1.65秒です。そしてこの数字の意味は

  • tempo is the base for all note durations in beats per minute (60 gives a 1-second base, 120 gives a half-second base, etc.)
  • freq is the frequency (in hertz) of the sound (set 0 to produce a rest)
  • duration is the duration of the sound in a 4/4 bar (meaning 1 is a quarter of a bar and 4 a full bar)

【訳】

  • tempo は、1分あたりの拍数で表したすべての音符の長さのベースです(60は1秒のベース、120は0.5秒のベースなど)
  • freq は音の周波数(ヘルツ単位)です(休符を生成するには0に設定します)
  • duration は4/4小節の音の持続時間です(1は小節の4分の1、4は小節全体を意味します)

です。曲が流れている間、メニューは表示されずブートプロセスは一時停止します。

この機能の目的はよく分かりませんが、こういう事もできますよ的なことですかね。

▲ 目次へ

クリエイティブ・コモンズ・ライセンス
Top of Pageの画像
sidemenuの画像