GUIツールに頼らないgrub2の設定方法

Startup-Managerは、WindowsやLinuxをデュアルブート、トリプルブートで使うユーザーにとっては、必須ともいえるGUI(Graphical User Interface)ツールだったのですが、Ubuntu12.04LTSのリリースとともに、リポジトリからその姿を消しました。

Startup-Managerの代替となるGUIツールとして、grub-customizerがあちこちで紹介されているようですが、今回は、GUIアプリに頼らず、昔ながらのやり方でgrub2を設定してみました。

スポンサーリンク

メニューエントリへの登録

先ずは、次のコマンドでデバイスマップを作成します。

sudo grub-mkdevicemap
 

デフォルト起動OSの設定

次に、起動時間やデフォルトの起動OSを変更します。

grub2の基本設定は、/boot/grub/grub.cfgにありますが、修正はすべて/etc/default/grubで行うことになっていますので、スーパーユーザーになり、次のコマンドでgrubを編集します。

sudo nano /etc/default/grub
 

ここではgedit nanoを使っていますが、日頃使い慣れたテキストエディタでOKです。また、gksuコマンドの代わりにsudoでもよい。

Windows 7とUbuntuのダブルブートで利用しているノートパソコンの場合、grubの先頭から12行目まではこんな感じになっている筈です。

Nano_Grub2

起動時のデフォルトOSは、GRUB_DEFAULTで指定します。通常は、先頭のOSを0番として数字で指定しますが、ここでは、OS名の”Windows 7 (loader) (on /dev/sda1)”で指定しました。

なお、OS名を取得するには、次のgrepコマンドを使でば簡単です。

grep menuentry /boot/grub/grub.cfg
 

結果はこんな感じになるので、”で囲まれたOS名を指定(又は0から起算した番号指定)します。

menuentry 'Ubuntu, with Linux 3.2.0-24-generic' --class ubuntu --class gnu-linux --class gnu --class os {
menuentry 'Ubuntu, with Linux 3.2.0-24-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
menuentry 'Ubuntu, with Linux 3.2.0-23-generic' --class ubuntu --class gnu-linux --class gnu --class os {
menuentry 'Ubuntu, with Linux 3.2.0-23-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os {
menuentry "Memory test (memtest86+)" {
menuentry "Memory test (memtest86+, serial console 115200)" {
menuentry "Windows 7 (loader) (on /dev/sda1)" --class windows --class os {

起動時間の設定

起動時間の設定は、grubのなかのGRUB_TIMEOUTで指定します。GRUB_TIMEOUT=10となっていれば、選択メニューが表示されてから10秒後に、デフォルトOSが自動的に選択されるようになっています。数値を変えることで、この起動時間を変更できます。

なお、GRUB_HIDDEN_TIMEOUTがコメントアウトされていますが、先頭の#を削除すると、選択メニューが表示されなくなりますので、ご注意を。

最後の仕上げとGrub2の再設定

grubの編集が終わったら、次のupdate-grubコマンドで変更内容を反映させます。

sudo update-grub
 

なお、致命的なタイプミスなどにより、起動できなくなったときは、慌てず騒がずGrub2の再設定を行いましょう。

今後は、冒頭で紹介したgrub-customizerなど、簡単便利なGUIツールが公式リポジトリにも登録されるようになるでしょうが、こういうCLI(Command Line Interface)による設定も覚えておくと、どこかで役に立つときがあるかもしれません。

タイトルとURLをコピーしました