環境
- Hardware: MacMini(Early 2009)
- Memory: 4GB
- Xen: xen-4.1.2 (リリース版) (64bit)
- Dom0(kernel): Linux 3.0.2 (リリース版)
- Dom0(distribution): Ubuntu 11.10
動作確認できたDomU達
- DomU(PVM): NetBSD 5.99.47 (64bit)
- DomU(PVM): NetBSD 5.99.51 (64bit)
- DomU(PVM): Linux 3.0.2/Ubuntu 11.10(64bit)
パーティション作成、refit導入、ubuntuインストールを行い、64bit環境(x86_64)のUbuntuは
多くのサイトでインストール方法がのっているので詳細は省略します。
以下の作業はUbuntu上での作業です。
Xen4.1.2のビルド
まずは
http://xen.org/products/xen_source.htmlから
xen-4.1.2.tar.gzを取得します。
$ tar zxvf xen-4.1.2.tar.gz
nVidiaベースのMacだとLinux同様Xenでもrebootが正常に動作しない問題があるので、以下のパッチをxen-4.1にも適用します。
xen-4.1-macmini-reboot.diff
またUbuntuでのコンパイルが通るように以下の差分もあてます。
diff-2
diff -r b8d2a4134a68 Config.mk
--- a/Config.mk Wed Mar 03 17:41:58 2010 +0000
+++ b/Config.mk Fri Mar 05 16:16:53 2010 +0900
@@ -38,8 +38,8 @@
BISON ?= bison
FLEX ?= flex
-PYTHON ?= python
-PYTHON_PREFIX_ARG ?= --prefix="$(PREFIX)"
+PYTHON = python
+PYTHON_PREFIX_ARG =
# The above requires that PREFIX contains *no spaces*. This variable is here
# to permit the user to set PYTHON_PREFIX_ARG to '' to workaround this bug:
# https://bugs.launchpad.net/ubuntu/+bug/362570
このパッチを適用して、xen kernelとツールをbuildします。
$ cd xen-4.1.2
$ patch -s -p1 < xen-4.1-macmini-reboot.diff
$ patch -s -p1 < diff-2
$ make xen tools
作成したxen kernelとtoolsをinstallします。
$ su
# make install-xen install-tools
Xen向け設定
domUの起動がうまくいかないことがあったので、複数domU起動時の間隔を調整します。デフォルト5秒ですが15秒にします。
/etc/sysconfig/xendomains
XENDOMAINS_CREATE_USLEEP=15000000
/boot/grub/grub.cfgを更新します。
# update-grub2
rebootして無事起動すれば完了です。
# reboot