Xen 上で,FreeBSD を,Domain-U(準仮想環境)で動かします. まずは,ハードウェア上で直接動く FreeBSD 環境を用意します.適当な作業ディレクトリを作ってください. Domain-U に対応した FreeBSD では,専用の kernel を使うので,ソースコード一式を subversion で取得し,ビルドする必要があります.
% mkdir /tmp/freebsd-xen
% svn co svn://svn.freebsd.org/base/release/8.0.0/ -r 'HEAD' /tmp/freebsd-xen/freebsd-release8/
% cd /tmp/freebsd-xen/freebsd-release8/
% make -j8 buildworld
% cd ./sys/i386/conf
% cp XEN harukiXEN2010020501
% vi harukiXEN2010020501
% config harukiXEN2010020501
% cd ../compile/harukiXEN2010020501
% make cleandepend; make depend
% make
make buildworld は結構な時間がかかるので,のんびり待ちます.
次に,イメージファイルを用意します.必要なサイズで作ればいいですが,Domain-0 が動くマシンに転送するので,物理的に遠い場合など,ネットワークが心配な際は,小さいサイズで作って動作を確認し,動作確認後に大きなサイズで作り直せばいいと思います.
# dd if=/dev/zero of=/tmp/freebsd-xen/disk.img bs=1k count=1M
この指定で,1GB のサイズのイメージファイルが作られます.
# cd /tmp/freebsd-xen/
# mdconfig -a -t vnode -f disk.img -u 2
# bsdlabel -w /dev/md2 auto
# bsdlabel -e /dev/md2
エディタが立ち上がるので,内容は,
# /dev/md2:
8 partitions:
# size offset fstype [fsize bsize bps/cpg]
a: 2097136 16 4.2BSD 0 0
c: 2097152 0 unused 0 0 # "raw" part, don't edit
こんな感じでいいと思います.a の fstype を書き換えただけです.
# newfs md2a
# mount /dev/md2a /mnt
これで,ディスクイメージが /mnt にマウントされたので,ここに先程ビルドした環境をインストールしていきます.
# cd /tmp/freebsd-xen/freebsd-release8/
# make installworld DESTDIR=/mnt
# cd ./sys/i386/compile/harukiXEN2010020501/
# make install DESTDIR=/mnt
# cd ../../../
# cp -rp ./etc/* /mnt/etc/
/etc 以下の,ttys と fstab が無いので,ビルドに使用した環境からコピーして書き換えます.
# cp /etc/fstab /etc/ttys /mnt/etc/
# vi /mnt/etc/fstab
fstab の内容は,
# Device Mountpoint FStype Options Dump Pass#
/dev/da0a / ufs rw 1 1
proc /proc procfs rw 0 0
# vi /mnt/etc/ttys
ttys は,ttyv0~ttyv8 をコメントアウトし,xc0 の行を作ります
xc0 "/usr/libexec/getty Pc" vt100 on secure
/etc/passwd,/etc/master.passwd もコピーしておきます.master.passwd の 2カラム目を空にしておくと,パスワード無しでログインできるので,root だけでも編集しておくと良いでしょう
# cp /etc/passwd /etc/master.passwd /mnt/etc/
# chroot /mnt
chroot% vipw
chroot% exit
# cat /mnt/etc/master.passwd | grep root
root::0:0::0:0:Charlie &:/root:/bin/csh
kernel だけ別途必要なので,コピーしておきます.
# cp /mnt/boot/kernel/kernel /tmp/freebsd-xen/freebsd8.kern
これで作業は終わりです.マウントを解除して,XEN 環境に転送します.
# cd /tmp/freebsd-xen/
# umount /mnt
# mdconfig -d -u 2
追記:
DomU として立ち上げるための Dom0 環境の構築については,
http://haruki.tumblr.com/post/421190852/debian-domain-0-dom0-xen
を御覧下さい-
download-google-chrome liked this
-
trampoline3x reblogged this from haruki
-
gadgetnews-review liked this
-
dunia-digital reblogged this from haruki
-
bayoetech liked this
-
implantsdentalcare liked this
-
ftnk reblogged this from otsune
-
tnmt reblogged this from otsune
-
shinsen reblogged this from kuriz
-
shinsen liked this
-
k32ru reblogged this from false
-
gungle reblogged this from otsune
-
false reblogged this from otsune
-
ryka reblogged this from otsune
-
kuriz reblogged this from otsune
-
shinkr reblogged this from otsune
-
simsjp reblogged this from otsune
-
samazama reblogged this from otsune
-
s0n19u3 reblogged this from otsune
-
otsune reblogged this from haruki
-
haruki posted this

