UbuntuとFreeBSDのデュアルブート

UbuntuをインストールしてあるPCにFreeBSDをインストールし、GRUBでデュアルブート化してみた。
このPCにはHDDが2台(500Gと250G)内蔵してあり、500GのHDDにUbuntuをインストールし、250GのHDDは未使用状態であった。

最初に空きのHDD(250G)に最新のFreeBSD 12.0をインストール。
HDDはGPTでパーティショニングを行った。

FreeBSDのインストールが完了したらUbuntuを起動させる。(GRUBにFreeBSDを認識させていないので、当然、FreeBSDは起動できない。)

Ubuntuで「blkid -o list」とターミナルで打ち込み、ファイルシステムのUUIDを表示させる。

root@tomato:~# blkid -o list

device     fs_type label    mount point    UUID
-------------------------------------------------------------------------------
/dev/loop0 squashfs         /snap/gnome-system-monitor/39
/dev/loop1 squashfs         /snap/gnome-calculator/167
/dev/loop2 squashfs         /snap/gnome-logs/31
/dev/loop3 squashfs         /snap/gnome-3-26-1604/62
/dev/loop4 squashfs         /snap/core/4486
/dev/loop5 squashfs         /snap/gnome-calculator/260
/dev/loop6 squashfs         /snap/gnome-system-monitor/57
/dev/loop7 squashfs         /snap/gnome-3-26-1604/74
/dev/sda1  swap             [SWAP]         d36d29f3-d53d-472a-9456-d811e0eeb4c8
/dev/sda2  ext4             /              6b4bb690-f05a-4750-8fc9-a3cf7bc88e51
/dev/sdb1                   (not mounted)
/dev/sdb2  ufs              (not mounted)  5c4453b64c32c83d
/dev/sdb3                   (not mounted)
/dev/sdb4  ufs              (not mounted)  5c4453b8af3f5753
/dev/sdb5  ufs              (not mounted)  5c4453bdb28e05db
/dev/sdb6  ufs              (not mounted)  5c4453bec82595d7
/dev/sdb7  ufs              (not mounted)  5c4453bfc602ceda
/dev/loop8 squashfs         /snap/gnome-logs/45

FreeBSDのマウントポイント「/」はsdb2としたのでUUIDは「5c4453b64c32c83d」であることがわかる。

この内容を設定ファイルに以下の様に追記する。

# vi /etc/grub.d/40_custom

#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

menuentry "FreeBSD 12.0" {
        insmod ufs2
        set root=(hd1,2)
        kfreebsd /boot/loader
        search --no-floppy --fs-uuid -set 5c4453b64c32c83d
}

起動時にブートメニューを表示させるようにgrubを編集する。

# vi /etc/default/grub

# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

GRUB_DEFAULT=0
#GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs

修正箇所は「GRUB_TIMEOUT_STYLE=hidden」をコメント化。

保存して編集結果を反映させる。

sudo update-grub
sudo update-grub2

その後、再起動すると以下の様にブート選択メニューが表示される。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です