monolithic kernel

Fedora16にXenをソースからインストールする

February 22, 2012

    ソースから、というかパッケージのソースを展開してコンパイルしてインストールするメモ。

    RHEL系は全く分かっていないので注意。

    依存パッケージをインストール。

    # yum groupinstall 'Development Libraries' 'Development Tools'
    # yum install transfig libidn-devel zlib-devel texi2html SDL-devel curl-devel libX11-devel python-devel tetex-latex ncurses-devel gtk2-devel libaio-devel texinfo dev86 gnutls-devel openssl-devel pciutils-devel libuuid-devel iasl bzip2-devel xz-devel e2fsprogs-devel ocaml ocaml-findlib glibc-devel auto-buildrequires

    Xenのソースコードを取得。

    $ yumdownloader --source xen
    $ rpm -ivh xen-4.1.2-6.fc16.src.rpm

    ソースコードを展開したりパッチを当てたり。

    $ cd ~/rpmbuild
    $ rpmbuild -bp SPECS/xen.spec

    diffを取れるようにするためにコピー。

    $ cd BUILD
    $ cp -a xen-4.1.2 xen-4.1.2.org
    $ cp -a xen-4.1.2 xen-4.1.2.my

    patchを作成。

    $ cd ..
    $ diff -rN xen-4.1.2.org xen-4.1.2.my > SOURCES/xen-4.1.2-featurename.patch

    specファイルにpatchを登録。

    $ cp SPECS/xen.spec SPECS/xen.my.spec
    $ vi SPECS/xen.my.spec

    patchのところに追記。

    Patch100: xen-configure-xend.patch
    Patch101: xen-4.1.2-featurename.patch
    
    Patch100: -p1
    Patch101: -p1

    コンパイルしてパッケージを生成。

    $ rpmbuild -ba SPECS/xen.my.spec

    生成したパッケージをインストール。

    # cd /home/user/rpmbuild
    # rpm -ivh RPMS/x86_64/xen-*

    管理ツールをインストール。最後にやらないとxen-libsとxen-licenseが競合するので注意。

    # yum groupinstall virtualization

    ここまででgrubに項目が追加されてDom0を起動できるようになります。Linux 3.0からDom0対応なので楽ですね。