さくらのVPSに新しいプランが発表されました。価格が一番安い「さくらのVPS 1G」はHDDが100GBになり、現在契約しているプランの5倍の容量、メモリーは2倍の容量となりお得感が大きいですね。さらに、乗り換え優遇キャンペーン中で一ヶ月利用料が無料となるので飛びついてみた訳ですが…
新さくらのVPSはOpenBSDはインストールできない?
いえ、できます。
正確には、驟雨のカーネル探検隊さんの所で紹介されていた方法では出来ませんでした。前回インストールしたときは、Ubuntuを再インストールしてGRUB2からOpenBSDのインストーラを立ち上げる方法を取っていました。
今回も、その方法でインストールを試みました。しかしこの方法では、ブートはするのですがHDDを認識しなくなってしまいました。ブート時のメッセージを見ると、旧サービスではI/Oの仮想化にQEMUが使われている?ようですが、新サービスではに、virtioが使われるようになったらしく、OpenBSDがvirtioを認識できないのでHDDが見えていなかったようです。
FreeBSDからインストールしよう。
色々調べてみると、新さくらのVPSにFreeBSDをインストールするとQEMUが使われる事がわかりました。FreeBSDのブートメッセージを見ると下記の様に"QEMU HARDDISK"と出力されています。ならば、FreeBSDからインストールすればいいんじゃね? と言う事で次のような手順でインストールしてみました。
- FreeBSDをインストール
- FreeBSD上にGRUB2をインストール
- GRUB2からOpenBSDのインストーラをキックする
- OpenBSDをインストール
インストールのベースがUbuntuがFreeBSDに変わっただけですね。
FreeBSDをインストール
カスタムOSインストールガイド FreeBSD編に従ってインストールします。インストールしたものはすぐ消えてしまうので適当で構いません。パーティションの設定はおまかせ・インストールもミニマムで問題無いです。
FreeBSD上にGRUB2をインストール
インストールが終了したらGRUB2のインストールを行います。最初に必要なパッケージをftpでダウンロードしてきます。
# ftp ftp://ftp2.jp.freebsd.org/pub/FreeBSD/ports/amd64/packages-8.1-release/devel/libiconv-1.13.1_1.tbz # ftp ftp://ftp2.jp.freebsd.org/pub/FreeBSD/ports/amd64/packages-8.1-release/devel/gettext-0.18_1.tbz # ftp ftp://ftp2.jp.freebsd.org/pub/FreeBSD/ports/amd64/packages-9.0-release/sysutils/grub2-1.98_1.tbz #
ここで注意するのが、「”grub2はpackages-8.1-release”でなく”packages-9.0-release”のパッケージを使用する。」と言うことです。
自分の環境では、packages-8.1-releaseのパッケージを使用するとgrub-installコマンドがエラーになり、grubがインストール出来ませんでした。
# grub-install /dev/ad0 /usr/local/sbin/grub-probe: error: cannot find a device for /boot/grub (is /dev mounted?). No path or device is specified. Try `/usr/local/sbin/grub-probe --help' for more information. Auto-detection of a filesystem module failed. Please specify the module with the option `--modules' explicitly. #
必要なファイルがダウンロード出来たならばインストールします。
# pkg_add libiconv-1.13.1_1.tbz gettext-0.18_1.tbz grub2-1.98_1.tbz pkg_add: warning: package 'grub2-1.98_1' requires 'gettext-0.18.1.1', but 'gettext-0.18_1' is installed ############################################################# To install GRUB on the master boot record of your hard drive use 'grub-install' command. A typical menu entry in /boot/grub/grub.cfg for FreeBSD: menuentry "FreeBSD" { set root(hd0,1,a) kfreebsd /boot/loader } Or use grub-mkconfig to create the config file. ############################################################# #
ワーニングが出ますが気にせず、grubをインストールします。
# grub-install /dev/ad0 Installation finished. No error reported. # cd /boot/grub # vi /boot/grub.cfg # vi /boot/grub/grub.cfg menuentry "FreeBSD" { set root(hd0,1,a) kfreebsd /boot/loader }
grubのインストールが完了したら、bsd.rdを/boot以下にダウンロードし、リブートします。
# cd /boot # sudo ftp ftp://ftp.jaist.ac.jp/pub/OpenBSD/5.0/amd64/bsd.rd # sync;sync;sync;reboot #
GRUB2からOpenBSDのインストーラをキックする
リブートとすると下記の様なgrubの画面が出てきますので、すかさず"c"キーを押下します。
次にbsd.rdを読み込んでブートさせます。
hddが認識されています。
その後は、普通のOpenBSDインストール作業と変わらないので、粛々とインストール作業を進めればよいでしょう。