仮想マシンモニター Xenに関するメモ


Xenとは?

Xenは仮想マシンを実行するための環境のようです。 特徴は

  • VMwareなんかよりも高速
  • 無料で入手できる
  • Guest OSは動作させるために手を加える必要がある

Xen unstable (3.0-devel)

コンパイル

コンパイルに必要なものを準備

# apt-get install python2.3-dev libcurl3-dev latex2html

スナップショットをもってきます。(ためしたのは2005/10/17のもの)

% wget http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/xen-unstable-src.tgz
% tar zxvf xen-unstable-src.tgz 
% cd xen-unstable
% make world
% make netbsd20
# make install

# mkdir /var/xen

/var/xenをつくっておかないと/var/xen/xcs_socketがつくれなくてxendが起動に失敗します。ただし、http://sourceforge.net/mailarchive/forum.php?thread_id=6736406&forum_id=35600 で/var/lib/xenに変更するPATCHがでています。このPATCHがとりこまれると/var/xenはつくる必要はありません。

.configを変更してカーネルをカスタマイズします。

% cd linux-2.6.12-xen0
% make ARCH=xen menuconfig
(config変更)
% cd ..
% su
# make dist
# make install

Let's note Y2

有線LAN

8139too ドライバで認識。 DHCPがうまくいかない(うちの環境の問題かも)が、static設定すると通信可能。

無線LAN

2005/10/17現在動作には至っていません。以下は途中経過です。

2200BGを認識させるためモジュールをインストールします。

# module-assistant -k SOMEWHERE/xen-unstable/linux-2.6.12-xen0 build ieee80211
# module-assistant -k SOMEWHERE/xen-unstable/linux-2.6.12-xen0 build ipw2200
# cd SOMEWHERE/xen-unstable
# dpkg -i ieee80211-modules-2.6.12-xen0_1.0.3-3_i386.deb
# dpkg -i ipw2200-modules-2.6.12-xen0_1.0.6-6_i386.deb

と、ここまではいきましたが、なぜか2200BGが認識できていません。 Xenじゃないときのdmesgでは、

ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection

このメッセージがでるのですが、Xenのときは何故かでません(調査中)

USB

USB mouseは動作できました(2005/10/17現在)

Xen 2.0

インストール

Debian Linux上でインストールします。 必要なものをあらかじめインストールしておきます。

# apt-get install iproute bridge-utils python2.3-twisted

http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads.htmlから xen-2.0.4-install.tgzをダウンロードしてきます。

% wget http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/xen-2.0.4-install.tgz
% tar zxvf xen-2.0.4-install.tgz
% cd xen-2.0-install
% su
# ./install.sh

grubの設定

Xen2.0+ドメイン0にXenLinux?を起動できるように/boot/grub/menu.lstに以下のエントリを加えます。

title           Xen 2.0 / XenLinux 2.6.10
root            (hd0,1)
kernel          /boot/xen.gz dom0_mem=131072
module          /boot/vmlinuz-2.6.10-xen0 root=/dev/hda2 ro console=tty0

# xen.gzは起動用のxenカーネル、
# ドメイン0用メモリを131072kBytes確保
# ドメイン0でvmlinuz-2.6.10-xen0を起動
# ドメイン0のvmlinuz-2.6.10-xen0のオプションは root=/dev/hda2...

XenLinux?のソースからのコンパイル

マシン固有のデバイスドライバを使用するためにドメイン0用のXenLinux?の再コンパイルが必要となることがあります。 xenのソースをダウンロードします。

% wget http://www.cl.cam.ac.uk/Research/SRG/netos/xen/downloads/xen-2.0.4-src.tgz
% tar zxvf xen-2.0.4-src.tgz
% cd xen-2.0
% make kernels
(これを実行するとwww.kernel.orgからlinux-2.6.10がダウンロードされコンパイルがはじまります)

configを変更する場合は、

% cd linux-2.6.10-xen0
% make ARCH=xen menuconfig
% make ARCH=xen
% su
# make ARCH=xen install modules_install

メモ

  • ドメイン0
    ドメイン0は特殊なドメインで他のドメインの管理などを行います。 またデバイスの管理等も行います。

Links