QEMU on Mac OS X(Vine Linux 3.1編)
オープンソースのQEMUを使用するとMac OS X上でx86用OSを実行させることができます。
Mac OS X用QEMUにVirtual PCライクのフロントエンド(一種のランチャ)を加えて利用しやすくしたものとしてQがあります。
ここではそのQを使用してMac OS X上でIntel版Vine Linux 3.1を動作させる方法を紹介します。
1.マシン環境
Qを動作させるホストマシン環境は以下の通りです。
- CPU:PowerPC G4(1GHz)
- メモリ:768MB
- OS:Mac OS X 1.3.9(Panther)
Qを実行するにはMac OS X 1.4.x(Tiger)が理想的です。
しかしMac OS X 1.3.9(Panther)でも動作します。
Mac OS X 10.3.9より前のバージョンを使用している場合は10.3.9にアップデートしておく必要があります。
- LANカード:AirMac Extreme
2.ゲストOS環境
ゲストOSとしては誰でも手軽に入手できるIntel版Vine Linux 3.1(Kernel 2.4.27-0vl7)を使用します。
またゲストOSが動作する仮想マシンには256MBのメモリを割り当てます。
尚、ネットワークは最も手軽なuserモードを使用します。
3.Qソフトウェア
- QEMU:0.8.0
- Q:0.8.0a537(2006年2月8日リリース版)
このQはQEMU本体も含んでいますのでQEMU本体だけをQとは別に用意する必要はありません。
Qはhttp://www.kberg.ch/q/からダウンロードできます。
今回使用したQのダウンロードファイルはQ-0.8.0a537.dmg(3.7MB)です。
- Qのインストール
- ダウンロードしたQ-0.8.0a537.dmgをダブルクリックします。
- マウントされて表示された「Q」画面中のQアイコンをそのApplicationsアイコンにドラッグしてQインストールは完了です。
4.Qへの仮想マシン環境の定義
Q上にVine Linux 3.1をインストールして動作させるにはQにそのVine Linux 3.1用仮想マシン動作環境を定義しておく必要があります。
その手順は以下の通りです。
- Qの起動
Qを起動すると「Q Control」画面が表示されます。
- Q Controlの[Guset PC]メニューから[New Guest PC]を選択します。
- ゲストPCの設定
- 「General」タブ
- Name:vine31qmac(Q Control画面の仮想マシンリストに表示させる仮想マシン名です)
- その他の項目:デフォルトのままで構いませんがSmb FilesharingはNo Filesharing指定でも問題ありません。
- 「Hardware」タブ
- Platform:x86 PC(デフォルト)
- RAM:256(128でも構いません)
- Videocard:Cirrus Logic GD5446 PCI VGA(デフォルト)
- Soundcard:指定せず
- Networkcard:NE2000 PCI network adapter(デフォルト)
- Floppy:No Floppy
- Harddisk(仮想ディスク):
Create Other Diskimageを選択します。
それを選択すると「Create new Diskimage」ダイアログが表示されるので以下のように設定します。
・Size:2048MB
・Format:raw(uncompressed) ※ここで作成する仮想ディスクをQEMU以外でも使用できるようにrawタイプを選択。
<Create Image>ボタンを押すと~/Documents/QEMU/vine31qmac.qvm/Harddisk_1.rawという2GBの仮想ディスクファイルが作成されます。
尚、~/Documents/QEMU/vine31qmac.qvm/configuration.plistは仮想マシン環境設定ファイルでQが自動生成するXML形式のファイルです。
configuration.plistには「-net user」(userモードネットワーク)がデフォルトで設定されます。
- CD-ROM:Built in CD-ROM (MacマシンのCD-ROM装置を利用)
- Boot from:デフォルトのHarddiskをCD-ROMに変更します。
- 「Advanced」タブ
Intel用Vine Linux 3.1使用においてはこの「Advanced」タブには何も指定しないで結構です(ネットワークは使用可能です)。
※「Advanced」タブの使用例;
FreeOSZooで公開されているdebian_sarge_ppc.tarの仮想ディスクを使用する場合この「Advanced」タブには
「-kernel /Users/xxx/debian_sarge_ppc/vmlinuz-2.4.27.001」を指定します。
- 最後に<Create PC>ボタンを押すとQ Controlの仮想マシンリストに仮想マシン名が表示されます。
5.Vine Linux 3.1のフルインストール
- インストールCDのセット
Vine Linux 3.1のインストールCDをマシンにセットします。
- Q Controlのvine31qmacを起動します(Q Controlの三角マークのボタンを起動できます)。
x86マシンをエミュレートしながら動作するためQEMU on Windowsと比較してかなり重いです。
- ネットワークのタイプ
ネットワーク:ユーザモード
- Vine Linux 3.1のCD-ROMからインストール
- インストールの種類:カスタム
- ディスクの設定
fdsikオプションを使用してhdaに対して最大サイズの1個のlinuxパーティションをhda1に割り当てます。
- liloの設定:デフォルトのままです。
- ネットワークの設定
userモードのネットワークを使用するため以下のように指定します。
IPアドレス:10.0.2.131(131の部分は適当で構いません)
ネットマスク:255.255.255.0(固定)
ネットワーク:10.0.2.0(固定)
ブロードキャスト:10.0.2.255(固定)
ゲートウェイ:10.0.2.2(固定)
ネームサーバ:10.0.2.3(固定)
パーティション設定は以下の通り。
/dev/hda1:2.5GB
/dev/hda2(Swap用):0.5GB
- パッケージグループの選択:フルインストール
469パッケージ、1.7GB消費します。
- パッケージのインストール
かなり時間が掛かります。
- Xの設定
色深度:24 Bit
画面解像度:800x600
※VRAM:4MB
6.ゲストOSの利用
仮想マシン設定の「Hardware」タブでBoot fromをHarddiskに変更して仮想マシンを起動するとVine Linux 3.1がブートされます。
- デスクトップ画面
- MozillaによるWebアクセス
- apt-getの実行
- その他(日本語入力等)
7.仮想ディスクのWindowsでの利用
Qで作成した仮想ディスクはWindows環境でも利用できます。
- QEMU on Windows (0.7.2)での利用
- Bochs on Windows (2.2.1)での利用
- WinPcapの導入
Qではuserモードのネットワーク設定にしていたためネットワーク利用に一部制限があります。
BochsではWinPcapを利用してホストマシンのネットワーク環境にゲストOSをそのまま参加させることが可能となります。
- Bochs設定ファイルの準備
Bochs設定ファイルを以下の内容で用意します。
display_library: win32
megs: 1024
romimage: file=BIOS-bochs-latest, address=0xf0000
vga: extension=vbe
vgaromimage: file=VGABIOS-lgpl-latest
ata0-master: type=disk, path="パス名\Harddisk_1.raw", mode=flat, cylinders=4161, heads=16, spt=63 ※2GB(2048MB)のflat型ディスクイメージ
boot: disk
clock: sync=realtime, time0=local
vga_update_interval: 50000
mouse: enabled=0, type=imps2
ne2k: ioaddr=0x240, irq=11, mac=b0:c4:20:00:00:01, ethmod=win32, ethdev=\Device\NPF_{AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEE}
※AAAAAAAA-BBBB-CCCC-DDDD-EEEEEEEEEEEEはBochs付属のniclist.exeが表示する値。
i440fxsupport: enabled=1, slot1=ne2k
usb1: enabled=1
#pit: realtime=1
- Bochsの起動
- lilo画面
lilo画面でEscキーを押し、boot:プロンプトで「linux 3」を指定して一時的にランレベル3で起動します。
- Welcome to Kudzu画面
Welcome to Kudzu画面でEnterキーを押します。
次に「Hardware Removed」画面でCirrus Logic|GD 5446が存在しない旨の表示が出るので<Remove Configuration>を応答します。
- Xの設定
テキストログインプロンプトにてrootでログインします。
Xの設定コマンド(xorgconfig)を起動します。
Xの設定でのビデオカードはVESA driver (generic)を選択します。
/etc/X11/xorg.confの内容を確認し、必要に応じてキーボードタイプやマウスのスクロール設定を行います。
- デスクトップ表示
startxでGNOMEデスクトップが表示されます。
- ネットワークの設定変更
ホストマシンのネットワーク環境にゲストOSをそのまま接続させるためのネットワーク設定を行います。
具体的には以下のファイルを変更します。
・/etc/sysconfig/network
・/etc/sysconfig/network-scripts/ifcfg-eth0
・/etc/resolv.conf
設定ファイル変更後は以下のようにしてネットワークを再起動します。
# /etc/rc.d/init.d/network restart
- Windows側からのリモートログイン
Windows側からBochs内のVine Linux 3.1にssh接続してみます。
問題なく接続できます。