User Mode Linuxの設定方法など。

概要

パッケージのインストール

 amd64アーキテクチャの場合は、User Mode Linuxのバイナリが用意されていないようなので、自分で作る。

# apt-get install uml-utilities
# apt-get install debootstrap
# apt-get install linux-source-2.6.18
# apt-get install libncurses5-dev

ゲストカーネルの構築

 .configは、次のようにした(→config.tgz)。

fileconfig.tgz
% mkdir ~uml
% cd ~uml
% tar xjf /usr/src/linux-source-2.6.18.tar.bz2
% make defconfig ARCH=um
% make menuconfig ARCH=um
% make ARCH=um
% strip linux

 そして、ゲストOS用のファイルシステムを構築。パーティションにしたかったが、User Mode Linuxの引数にはファイルしか渡せないようなので、パーティション全てを使ってファイルを作成した。debootstrapは、それなりに時間がかかる。

# mkfs.jfs /dev/sdb1
# mount /dev/sdb1 umlmnt
# dd if=/dev/zero of=umlmnt/root_fs
# mkfs.jfs umlmnt/root_fs
# mount -o loop umlmnt/root_fs /mnt
# debootstrap etch /mnt
# vi /mnt/etc/hosts
# vi /mnt/etc/resolv.conf
# vi /mnt/etc/fstab
# vi /mnt/etc/hostname
# vi /mnt/etc/network/interfaces
# umount /mnt

uml用ユーザ作成

# useradd uml -g 100 -G uml-net

起動

 ゲストカーネルの構築で作成したlinuxコマンドを実行する。仮想コンソールを使用し、バックグラウンドで起動する。

% /usr/bin/nohup linux con0=fd:0,fd:1 con=pts ubd0=umlmnt/root_fs eth0=tuntap,,,192.168.0.100 > /tmp/umlout &

 標準では、自動起動などの仕組みが用意されていないので、サービス起動停止用スクリプトを作ってみた(→umlctrl.tgz)。
 結構無茶な方法なのでうまくいかないことがある…。

fileumlctrl.tgz

参考

http://user-mode-linux.sourceforge.net/
http://www.atmarkit.co.jp/flinux/special/uml/uml01.html
http://opentechpress.jp/developer/07/01/15/0111214.shtml
http://www.ne.jp/asahi/open/gallery/linux/uml/umlvl31/umlvl31.htm
http://www.nabe.bne.jp/linux/uml-vm.html
http://memo.blogdns.net/uml2.html
http://www.digitalinfra.co.jp/uml/jdike/UserModeLinux-HOWTO-5.html


添付ファイル: fileumlctrl.tgz 882件 [詳細] fileconfig.tgz 868件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2007-09-16 (日) 15:24:00 (6060d)