2011年2月12日土曜日

FreeBSDをxenの完全仮想化(hvm)でインストールした。

FreeBSDをdomUでインストールしたかったのだが、domUなカーネルが見つから無いので完全仮想化で一度インストールし、その世界の中でdomUな準仮想化用のカーネルを作る方針をとった。

結論
・HVMではテキスト表示での接続ができない模様
・FreeBSDのインストールの際にパラメータをいじらないと「Fatal trap 12」で始まるエラーがどんどこでる。
・上記2点をクリアしたらインストールでき、起動できた。
・domU用のカーネル作成はまだ試していない。

環境は
dom0:
NetBSD/5.1(amd64) Athlon II X2 265(3.3GHz)

インストールOS:
FreeBSD 8.1(amd64)
(FreeBSD-8.1-RELEASE-amd64-disc1.isoを利用)

設定ファイルの記述:
---
dom0# grep -v ^# freebsd-hvm.hvm|grep -v ^$
kernel = "/usr/pkg/lib/xen/boot/hvmloader"
builder='hvm'
memory = 1024
name = "freebsd-hvm"
vif = [ 'mac=00:16:3e:00:00:13, bridge=bridge0, type=ioemu' ]
device_model = '/usr/pkg/libexec/qemu-dm'
disk = [ 'file:/var/xen/freebsd-hvm/freebsd-hvm.img,ioemu:hda,w', 'file:/var/xen/freebsd-hvm/FreeBSD-8.1-RELEASE-amd64-disc1.iso,ioemu:hdc:cdrom,r' ]
vnc = 1
vnclisten="172.26.0.1"
usb=1
usbdevice='tablet'
serial='pty'
-------------

この状態で下記のコマンドで起動。
xm create boot=d freebsd-hvm.hvm
VNCで接続できるので、VNCクライアントで接続する。
(パスワードを設定していないので気になる人は適切にね)

インストーラが起動しているので6を押して、プロンプトに落ちて
---
set hw.clflush_disable=1
boot
---
を入力するとインストーラーが起動できる。
インストールが終わったあとは
xm create boot=c freebsd-hvm.hvm
で起動。
ただし、ブートローダーでは同じようにパラメータを変更しないと起動しない。
恒久的に変えるのであれば、設定ファイルに記述してしまう。
---
> cat /boot/loader.conf
hw.clflush_disable="1"
---
あとvncでの画面も提供されたままなので気になる人は修正すること。

○テキストで起動できない件
なんでダメかよく分からんが、Unix magazine 2007 Winterの「Fedora Core5/6で試すXenインストールガイド」という記事の中で「HVMドメインの場合は、テキストのみの表示を選択できないようです。」(P.84)とも書いてある。

○起動時にパラメータをいじることについて
FreeBSD 2009/08末〜の変更についての覚え書きRunning FreeBSD 8.1 as a Xen HVM DomU on Flexiantを参考にさせてもらいました。

0 件のコメント:

コメントを投稿