Ubuntu Desktopでデフォルトで起動するOSを変更する!(GRUB2)

Ubuntuで使用されているブートローダのGRUBの設定を変更して、デフォルトで起動するOSを変更します。

使用した環境を確認する!

  • Ubuntu 18.04 LTS Desktop (18.04.3)

起動するOSを確認する!

以下のコマンドで、起動したいOSが何番目に表示されているかを確認します。

$ awk -F\' '$1=="menuentry "||$1=="submenu " {print $2}' /boot/grub/grub.cfg
Ubuntu
Advanced options for Ubuntu
Ubuntu 18.04.5 LTS (18.04) (on /dev/sda2)
Advanced options for Ubuntu 18.04.5 LTS (18.04) (on /dev/sda2)
Ubuntu 20.04.1 LTS (20.04) (on /dev/sdc1)
Advanced options for Ubuntu 20.04.1 LTS (20.04) (on /dev/sdc1)

起動するOSを変更する!

起動するOSの変更方法には、コマンドによる方法と設定ファイル変更による方法があります。

grub-set-defaultコマンドにより変更する!

grub-set-defaultコマンドの引数に、起動するOSが表示されている順番を指定しますが、最初のメニュー番号は「0」になります。

$ sudo grub-set-default 4

設定ファイルの修正により変更する!

/etc/default/grubファイルを編集します。起動するOSはGRUB_DEFAULTで指定します。OS選択画面の表示時間等、起動時のその他の設定もここで設定できます。

$ sudo vi /etc/default/grub
...
GRUB_DEFAULT=4
#GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
...

GRUB_TIMEOUTの設定が効かない場合は、以下を試してみましょう。

GRUB_RECORDFAIL_TIMEOUT=5

update-grubコマンドで設定を反映します。

$ sudo update-grub

次回のみ起動するOSを変更する!

次回のみ起動するOSを変更する場合は、grub-rebootコマンドを使用するのが便利です。コマンドの引数に、起動するOSが表示されている順番−1の値を指定します。

$ sudo grub-reboot 4

おわりに

ブートローダがGRUBの場合に、デフォルトで起動するOSを変更する方法を確認しました。

関連記事