2011年2月13日日曜日

FreeBSDをxenの準仮想化でインストールした(けど、失敗した)

先日、FreeBSD/amd64を完全仮想化で動かしたので,続いてdomUな準仮想化(PV)で動かそうとしていたが.....

もしかしてFreeBSD/amd64はPVなdomU対応していない?????
FreeBSD/i386だとdomU用のカーネルコンフィグファイルがあるがFreeBSD/amd64だと見当たらない

さらに結論としては、FreeBSD/i386 8.1はNetBSD/amd64 5.1のdomOでは動かない...のかな。

----とりあえずやったこと。
まずはFreeBSD/amd64は見捨てて、HVMなdomUへFreeBSD/i386-8.1をインストールする。
やり方は、一昨日のやり方と変わらない。

次にHOWTO: Create a FreeBSD 8 i386 Xen PV domUを参考に作業開始。
# cd /usr
# dd if=/dev/zero of=freebsd.img bs=1m count=4096
(「truncate -s 4G freebsd.img」でも良いけどそれはダメだという投稿あり。どっちも試したけどあかんかった。
# mdconfig -f freebsd.img
md0
# fdisk -BI md0
******* Working on device /dev/md0 *******
fdisk: invalid fdisk partition table found
fdisk: Class not found
# bsdlabel -wB md0s1
md0s1a
# newfs /dev/md0a
/dev/md0s1a: 4094.7MB (8385848 sectors) block size 16384, fragment size 2048
using 23 cylinder groups of 183.77MB, 11761 blks, 23552 inodes.
with soft updatesat:
160, 376512, 752864, 1129216, 1505568, 1881920, 2258272, 2634624, 3010976, 3387328, 3763680, 4140032, 4516384, 4892736, 5269088, 5645440, 6021792, 6398144,6774496, 7150848, 7527200, 7903552, 8279904
# mount /dev/md0s1a /mnt
# pwd
/usr
# cd src/
# time make buildworld

--------------------------------------------------------------
>>> World build completed on Sat Feb 12 23:59:28 JST 2011
--------------------------------------------------------------
2256.968u 187.686s 44:38.20 91.2% 3448+1182k 25519+4223io 10786pf+0w
# time make buildkernel KERNCONF=XEN

--------------------------------------------------------------
>>> Kernel build for XEN completed on Sun Feb 13 00:11:33 JST 2011
--------------------------------------------------------------
104.852u 6.320s 2:02.67 90.6% 3496+1221k 1115+548io 194pf+0w
# setenv DESTDIR /mnt
# time make installworld

14.920u 10.308s 1:29.19 28.2% 195+342k 2127+1665io 7463pf+0w
# time make installkernel KERNCONF=XEN

0.121u 0.015s 0:02.73 4.7% 208+342k 17+147io 24pf+0w
# cd etc
# pwd
/usr/src/etc
# time make distribution

0.192u 0.048s 0:00.58 39.6% 298+577k 71+5io 287pf+0w
# /mnt/etc/fstab
--
/dev/xbd0 / ufs rw 1 1
--
という行だけを作成。
# vi /mnt/etc/ttys
このファイルの下記の1行を追加およびttyv0からttyv8までをコメントアウトする。
--
xc0 "/usr/libexec/getty Pc" vt100 on secure
--
カーネルを外の世界に持ち出す。XenでdomUとして起動する時にdom0から直接指定できる場所にある必要がある。
ls -l /mnt/boot/kernel/kernel
-r-xr-xr-x 1 root wheel 4841001 Feb 13 00:11 /mnt/boot/kernel/kernel
# file /mnt/boot/kernel/kernel
/mnt/boot/kernel/kernel: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), dynamically linked (uses shared libs), not stripped
scpとかで外の世界へ。

# umount /mnt
# mdconfig -d -u md0

その後、/usr/freebsd.imgをscpしたが、仮想IFがFastEthernetなので律儀に100Mbpsしかでないので転送にエラく時間がかかった。

その後、xmの設定ファイルを色々書いてみたが、
Error: Device 768 (vbd) could not be connected. Hotplug scripts not working.
と言われて進まず。

FreeBSD/NetBSDのxenのMLでも動かないという話はあるけど....
Re: FreeBSD DomU
freebsd domu on netbsd dom0 kernel panic

0 件のコメント:

コメントを投稿