Hatena::ブログ(Diary)

May the Source be with you このページをアンテナに追加 RSSフィード

2008-02-16

ブートローダを grub2 に入れ替える

フォーラムネタです。通常 Ubuntu で使われているブートローダは grub ですが、より高機能な grub2 に入れ替えてみました。とりあえずの目的は高解像度と色数の多い背景絵です。以下 Hardy のテスト環境で。

まず grub2 のインストール。

$ sudo apt-get install grub2

デフォルトでは既存の grub を上書きはせず、grub から grub2 をチェインロードする設定になります。grub-install /dev/sda などを実行することで、MBR を上書きできます。

設定ファイルは /boot/grub/grub.cfg に変更になりました。またパーティション番号のナンバリングが 1 からに変更されました。/dev/sda1 等のパーティション番号と同じになっているので、一台目の HDD の最初のパーティションは (hd0,1) となります。

まず表示したい解像度に合わせた背景画像を用意します。JPEG 画像も使えるらしいのですが、今回は TGA フォーマットの画像を使うことにしました。Gimp で画像を作成して /boot/grub に保存します。*1

そして設定ファイルを編集します。今までのように直接設定ファイルを書き換えるのではなく、テンプレートファイルを書き換えてから update-grub2 コマンドで grub.cfg を自動生成する仕組みになっているようです。

まずデフォルトで読み込む項目とタイムアウト値を設定します。/etc/default/grub を編集。

GRUB_TIMEOUT=60

# 追記 ディストリ名を Ubuntu に変更します

GRUB_DISTRIBUTOR=Ubuntu

# 追記 カーネルに渡すオプションを指定します。日本語を指定しないと gdm がおかしくなるので必須

GRUB_CMDLINE_LINUX="quiet splash locale=ja_JP"

次に画面の解像度を指定します。今回はデフォルトでインストールされている Debian のテーマファイルをいじることにします。/etc/grub.d/00_header を編集。

set gfxmode=1024x768

背景画像と文字色を指定します。/etc/grub.d/05_debian_theme の該当個所を編集。

for i in /boot/grub/ubuntu-tan.{png,tga} ; do # <- 自分が使いたい画像のファイル名

設定のスクリプトを見るとわかりますが、背景画像が有効になった場合は menu_color_normal ではなく color_normal が有効になります。文字色を変えたい場合は変更箇所に気をつけてください。

編集が終わったら update-grub2 を sudo で実行してください。

f:id:MIZUNO:20080216210753j:image

Ubuntu-tan を Grub の背景にしてみました。ワイド画面なのでちょっと横に伸びてますが。

Grub2 の設定は Debian の解説ページが役に立ちます。

*1:別にどこでもいいです

hirohiro 2008/02/18 11:39 このgrub2は8.04ではデフォルトになったりするんですか?

MIZUNOMIZUNO 2008/02/18 22:22 デフォルトにはならないと思います。ですがパッケージが用意されているのでインストールは簡単です。
ただ、まだ Debian からテーマをそのまま持ってきたという感じなので、細かい設定は手動で行う必要があるかもしれません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/MIZUNO/20080216/1203163407
Connection: close