Xen Setup · 2 min read · Feb 10, 2026

Debian Sargeのための完璧なXen 3.0.3セットアップ - ページ2

4 ソースからのインストール

次のコマンドを実行します:

apt-get remove exim4 exim4-base lpr nfs-common portmap pidentd pcmcia-cs pppoe pppoeconf ppp pppconfig  
apt-get install iproute bridge-utils python-twisted gcc-3.3 binutils make zlib1g-dev python-dev transfig bzip2 screen ssh debootstrap libcurl3-dev libncurses5-dev x-dev

4.1 Xenのインストール

次に、http://www.xensource.com/xen/downloads/dl_303tarballs.html から xen-3.0.3_0-src.tgz をダウンロードして解凍します:

cd /usr/src  
wget http://bits.xensource.com/oss-xen/release/3.0.3-0/src.tgz/xen-3.0.3_0-src.tgz  
tar -xvzf xen-3.0.3_0-src.tgz

次に、Xenをコンパイルします。これにより、1つのXenカーネル (2.6.16.29-xen) が作成されます。これを行う前に、dom0およびdomU用の個別のカーネルを作成することはできません。これには時間がかかる場合があるので、辛抱強く待ってください:

cd xen-3.0.3_0-src/  
make world  
make install  
mv /lib/tls /lib/tls.disabled

これでXenがインストールされました。ブート時にXenサービスを開始するには、次のようにします:

update-rc.d xend defaults 20 21  
update-rc.d xendomains defaults 21 20

新しいXenカーネル用のramdiskが必要ですので、次のようにします:

depmod 2.6.16.29-xen
apt-get install libhtml-template-perl libparse-recdescent-perl
wget http://downloads.howtoforge.com/files/yaird_0.0.12-8bpo1_i386.deb  
dpkg -i yaird_0.0.12-8bpo1_i386.deb

(元のyairdパッケージはhttp://backports.org/debian/pool/main/y/yaird/ にありましたが、その後削除されたため、http://downloads.howtoforge.com/files/yaird_0.0.12-8bpo1_i386.deb でパッケージを利用できるようにしました。)

mkinitrd.yaird -o /boot/initrd.img-2.6.16.29-xen 2.6.16.29-xen

最後のコマンドはramdisk /boot/initrd.img-2.6.16.29-xen を作成します。

次に、新しいカーネルをGrub(ブートローダー)に追加します。/boot/grub/menu.lst を編集し、行 ### BEGIN AUTOMAGIC KERNELS LIST の前に次のスタンザを追加します:

vi /boot/grub/menu.lst

| [...] title Xen 3.0.3 / XenLinux 2.6 root (hd0,0) kernel /xen.gz dom0_mem=64000 module /vmlinuz-2.6-xen root=/dev/hda6 ro max_loop=255 module /initrd.img-2.6.16.29-xen [...] |

/dev/hda6 があなたの / パーティションであることを確認してください。第1章で述べたGrubとパーティショニングについての注意を忘れないでください!仮想マシンがループデバイスとしてマウントされるため、十分なループデバイスが利用できるように、max_loop=255 をモジュール行に追加しました。

システムを再起動します:

shutdown -r now

ブートプロンプトで、GrubはXen 3.0.3 / XenLinux 2.6を最初のカーネルとしてリストし、自動的にブートするはずです。システムが問題なく起動すれば、すべてが正常です!

4.2 dom0カーネルのコンパイル

次に、dom0カーネルをコンパイルします:

cd /usr/src/xen-3.0.3_0-src/  
make linux-2.6-xen0-config CONFIGMODE=menuconfig KERNELS="linux-2.6-xen0"

表示されるカーネル設定メニューで、クォータ、iptables、およびダミーネットワークドライバをモジュールとして有効にします。これがこれらのモジュールを有効にする場所です:

File systems --> [*] Quota support  
 Old quota format support  
 Quota format v2 support
Device Drivers ---> Network device support --->  Dummy net driver support
Networking ---> Networking options ---> [*] Network packet filtering (replaces ipchains) ---> Core Netfilter Configuration --->  Netfilter Xtables support (required for ip_tables)
Networking ---> Networking options ---> [*] Network packet filtering (replaces ipchains) ---> IP: Netfilter Configuration --->  IP tables support (required for filtering/masq/NAT)

[*] は: カーネルに静的に組み込むことを意味します。

は: カーネルモジュールとしてビルドすることを意味します。 次に、dom0カーネルをビルドしてインストールします: ``` make linux-2.6-xen0-build make linux-2.6-xen0-install depmod 2.6.16.29-xen0 ``` 次に、新しいカーネルをGrub(ブートローダー)に追加します。/boot/grub/menu.lst を編集し、行 ### BEGIN AUTOMAGIC KERNELS LIST の前に次のスタンザを追加します(第4.1章で追加したスタンザは削除またはコメントアウトしてください!): ``` vi /boot/grub/menu.lst ``` | ``` [...] title Xen 3.0.3 / XenLinux 2.6 root (hd0,0) kernel /xen.gz dom0_mem=64000 module /vmlinuz-2.6-xen0 root=/dev/hda6 ro max_loop=255 [...] ``` | /dev/hda6 があなたの / パーティションであることを確認してください。第1章で述べたGrubとパーティショニングについての注意を忘れないでください! システムを再起動します: ``` shutdown -r now ``` ブートプロンプトで、GrubはXen 3.0.3 / XenLinux 2.6を最初のカーネルとしてリストし、自動的にブートするはずです。システムが問題なく起動すれば、すべてが正常です! ### 4.3 domUカーネルのコンパイル その後、domU(仮想マシン)用のカーネルをコンパイルします: ``` cd /usr/src/xen-3.0.3_0-src/ make linux-2.6-xenU-config CONFIGMODE=menuconfig KERNELS="linux-2.6-xenU" ``` 表示されるカーネル設定メニューで、クォータとiptablesをモジュールとして有効にする必要があります(それらがモジュールであることが重要です。カーネルに静的に組み込んだ場合、仮想マシンでiptablesが機能しませんでした!)。これがこれらのモジュールを有効にする場所です: ``` File systems --> [*] Quota support Old quota format support Quota format v2 support``` ``` Networking ---> Networking options ---> [*] Network packet filtering (replaces ipchains) ---> Core Netfilter Configuration ---> Netfilter Xtables support (required for ip_tables) ``` ``` Networking ---> Networking options ---> [*] Network packet filtering (replaces ipchains) ---> IP: Netfilter Configuration ---> IP tables support (required for filtering/masq/NAT) ``` [*] は: カーネルに静的に組み込むことを意味します。 は: カーネルモジュールとしてビルドすることを意味します。 カーネル設定メニューを終了した後、次のようにしてdomUカーネルをビルドしてインストールします: ``` make linux-2.6-xenU-build make linux-2.6-xenU-install depmod 2.6.16.29-xenU ```
Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。