UML実行環境構築(Vine Linux 3.1編)


UML(User Mode Linux)はLinux上で別のLinuxをゲストOSとして実行させるオープンソフトウェアです。
UMLは仮想マシン環境ではないためVGAカードなどのエミュレート機能はありませんがネットワーク環境を簡単に構築できるのが大きな特徴です。

ここではVine Linux 3.1をUML環境のホストOSとして利用し、更にUML環境のゲストOSとしてもVine Linux 3.1を使用するという単純構成のUML環境を構築する手順を紹介します。
尚、公開版Debian用仮想パーティションイメージファイルをそのまま利用してみたいという方はこちらをご覧下さい。


1.ホストOS側でのUML環境の構築

UML環境を構築する方法にはいくつかの種類がありますがここでは最も単純なrpmパッケージ利用で行うことにします。

Vine Linux 3.1(Kernel 2.4.27)でも使用できるUMLのrpmパッケージはuser_mode_linux-2.4.19.5um-0.i386.rpm (1.7MB)です。
このrpmファイルはhttp://user-mode-linux.sourceforge.net/dl-sf.htmlから辿れるhttp://sourceforge.net/project/showfiles.php?group_id=429からダウンロードできます。


user_mode_linux-2.4.19.5um-0.i386.rpmに含まれるファイルは以下のコマンドで確認できます。
# rpm -qlp user_mode_linux-2.4.19.5um-0.i386.rpm

[user_mode_linux-2.4.19.5um-0.i386.rpmに含まれるファイル一覧]
/usr/bin/jailtest
/usr/bin/linux ※UMLのゲストOS起動コマンドです。
/usr/bin/tunctl
/usr/bin/uml_mconsole
/usr/bin/uml_moo
/usr/bin/uml_net
/usr/bin/uml_switch
/usr/lib/uml/config
/usr/lib/uml/modules-2.2.tar
/usr/lib/uml/modules-2.4.tar ※UMLのゲストOSの/lib/modulesに格納すべきカーネルモジュール群のtarファイルです。
/usr/lib/uml/port-helper


ホストOS側でのUML環境の構築は以下の手順で行います。



2.ゲストOS仮想ディスクの作成

UMLでのゲストOSは物理ディスクにインストールされていても仮想ディスクにインストールされていてもどちらでもUMLで利用可能です。
ここでは仮想ディスクにVine Linux 3.1をインストールし、その仮想ディスクをホストOS側のUML環境で起動して利用することにします。

仮想ディスクへのVine Linux 3.1のインストールは手軽なQEMUを利用することにします。
この場合のQEMUはWindows用、Linux用、Mac OS X用のどれでも構いません。
またVMwareで作成した仮想ディスクもUMLのゲストOSとして利用できます。
ここではQEMU on Windowsを使用してVine Linux 3.1の仮想ディスクを用意することにします。

Vine Linux 3.1をUMLのゲストOSとして動作させるための環境構築項目は以下の通りです。

(1)QEMU環境でのVine Linux 3.1のインストール
(2)VNCサーバの導入と自動起動設定
(3)日本語入力パッケージ(Anthy,uim,uimアプレット)のインストール
(4)日本語入力環境の変更

(5)/etc/fstabの編集
(6)ネットワーク設定ファイルの変更
(7)UML環境用カーネルモジュールの取り込み

以下に順を追って各項目の詳細手順を示します。上記(1)〜(4)までの各作業はQEMU環境で行います。



3.ゲストOSの仮想パーティションイメージファイルの準備

UMLでゲストOSを動作させるためにゲストOSの仮想パーティションイメージファイルを準備します。
WindowsのCygwinでのddコマンドまたは実Linux上のddコマンドで、仮想ディスクから仮想パーティションイメージファイルを以下のようにして作成します。

dd if=vine31uml.img skip=63 of=vine31umlhda1.img bs=512
※skip=63は仮想ディスクの先頭63セクタ分をスキップさせる指定で、512はセクタサイズです。

仮想パーティションから作成した仮想パーティションイメージファイルはQEMU用の内容が残っているためUML環境ではまだ使用できません。
そこでUMLをインストールしたホストOS上で仮想パーティションイメージファイルの中身を若干変更します。



4.UML環境でのゲストOSの実行



5.付録:公開版Debian用仮想パーティションイメージファイルの利用

UMLを最も簡単に体験できるようにUML環境向けのDebian 3.0用仮想パーティションイメージファイルが公開されています。
・公開元:http://user-mode-linux.sourceforge.net/dl-sf.html
・公開ファイル:Debian-3.0r0.ext2.bz2 (23MB)

user_mode_linux-2.4.19.5um-0.i386.rpmをインストールした後にDebian用仮想パーティションイメージファイルをUMLで実行する手順は以下の通りです。

公開版Debian 3.0をUMLで試行した後でcoLinux用Debian 3.1の仮想パーティションイメージファイルの中をUML用に若干変更してUML起動しVNC接続検証してみました。

[UMLでのDebian 3.1デスクトップ]