※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

Xen情報

Xenのソースからのインストール(デスクトップに入れてみた)

  • /usr/src/以下にxenのソースを持ってきて展開する
    # wget http://bits.xensource.com/oss-xen/release/3.0.4-1/src.tgz/xen-3.0.4_1-src.tgz
    # tar xfvz xen-3.0.4_1-src.tgz
    
  • xen-3.0.4_1-srcに入って、Makefileを書き換える
    # 下の行をMakefileに追加する
    KERNELS ?= linux-2.6-xen0 linux-2.6-xenU
    
  • xen-3.0.4_1-src内で以下を実行する
    # make world
    
    • これは以下のことをする
      • Xenのビルド
      • xendを含むコンソールツールのビルド
      • Linuxカーネル2.6のソースをダウンロードして、Xen用にパッチを当てる
      • ドメイン0とドメインU用のカーネルイメージ生成
      • dist/install/以下に実際にインストールするものが配置される
  • さらにそれぞれのカーネルのカスタマイズをする。このとき、自動的に各ディレクトリ内に.configファイルがあるが、それを流用し、あらかじめ組み込んであるモジュールや、そうでないものを調べておいて、make menuconfigに反映させるといい(時間かかるけど)。普通のカーネルのconfigを流用するとXEN特有の設定がmake menuconfigで出てこなかったので。
    # cd  linux-2.6-xen*
    # make menuconfig
    
  • 上のことをxen0とxenUの両方でした後以下を実行
    # cd ..
    # make linux26
    
    • すると今のカスタマイズ内容がdist/install以下に反映される
  • dist/の中に入って、installスクリプトを実行する
    # cd dist
    # ./install.sh
    
    • これで、インストールしたいファイルがローカルのシステムの適切な場所へと移動される

DomainUの立ち上げ

  • まずXenを使うためにはxendを動かす
    # /etc/init.d/xend start
    
  • あらかじめ作っておいたファイルシステムイメージ、およびXen用の設定ファイルを用いて立ち上げる
    # xm create /path/to/xen_domainU_config -c
    
  • ここでのxen_domainU_configは以下のようなもの。IPアドレスなどをここで指定しておくことがミソ。domainUのファイルシステム上の/etc/network/interfacesの設定をしてても上手く反映されてなかった。。。なんでだろう
    # Kernel image file.
    kernel = "/boot/vmlinuz-2.6.16.29-xenU"
    memory = 64
    
    # A name for your domain. All domains must have different names.
    name = "mydebian"
    
    vif = [ 'mac=00:16:11:00:00:11, bridge=xenbr0' ]
    
    disk = [ 'file:/path/to/xen_domainU_config,sda1,w']
    
    # ここがミソ
    address="***.***.***.***"
    netmask="***.***.***.***"
    gateway="***.***.***.***"
    
    # Set root device.
    root = "/dev/sda1 ro"
    
    # Sets runlevel 4.
    extra = "4"
    
    
  • ここでホスト名も決定できるみたいだけど、これはFSイメージの中の/etc/hostnameに書き加えておいた。あとで、試してみる。あと、vmidも固定できるぽい。

-