VirtualBox+XP mode

Date: 2012/01/02(Mon) 03:50

Windows Virtual PC以外、もっと具体的には「Oracle VM VirtualBox」で動かす方法のメモです。
XP ModeについてはこちらのMicrosoft公式ページを参照下さい。

XP ModeをそのままVirtualBoxで動かそうとするとWindowsのライセンス認証が問われて面倒くさいです(なお、XP Modeは使用する権利を持ったホストOS上であれば、どの仮想化ソフトを使って動作させても問題ありません)。
それを回避し、最新のVirtualBoxでXP Modeを動かす方法です。

ちなみに、XP Modeを動かす目的は、その仮想サーバ上でXAMPPとWord Pressを入れてテスト、です。
一時的なバックアップを取るにはスナップショットが便利なので、VirtualBox上で動作させたいと思います。また、MySQLを使うので、複数CPUで動作する仮想マシン上で動かしたい、ということもあります(一般的な仮想化のメリットはGoogleなどに聞いてもらえれば出てきます。

おおまかな手順は以下の通りです。
1.「Windows XP mode」のダウンロード、インストール
2.「Sun xVM VirtualBox 3.1.2」のダウンロード、インストール
3.「VMLiteWorkstationPluginSetup.exe」のダウンロード、インストール
4.VirtualBoxのアップデート


1.「Windows XP mode」のダウンロード、インストール

「Windows XP Mode のダウンロード」からダウンロード。
インストールも通常のアプリケーションと同じです。

2.「Sun xVM VirtualBox 3.1.2」のダウンロード、インストール

VMLite Workstation Plugin を動作させるために必要です。ダウンロードは以下のリンクから。
http://download.virtualbox.org/virtualbox/3.1.2/VirtualBox-3.1.2-56127-Win.exe

インストールは特に難しいことはありません。
デフォルトの設定のままで、次へ次へで完了します。

3.「VMLiteWorkstationPluginSetup.exe」のダウンロード、インストール

Windowsのライセンス認証を問われなくとも動作させるために必要です。
以下からダウンロードできますが、まずはユーザ登録が必要です。フリーメールなどで登録しておきましょう。
http://www.vmlite.com/index.php?option=com_rokdownloads&view=folder&Itemid=153

インストールが終わると、VMLite XP Modeのセットアップが起動します。
特に複雑なことはありません(Windowsのインストールができる人なら問題ない) 。基本的にデフォルトのままで次へ次へで完了します。

完了すると仮想マシンの変換(?)と起動が始まりますので、しばらく待機します。
「詳細」を出しておかないと日付の選択などで止まっていることがわからないので、表示させておきましょう。


起動が終わったら、一旦仮想マシン(Windows)をシャットダウンします。
VirtualBoxから起動できることを確認しておくとよいでしょう。


VirtualBoxでWindowsが起動できることを確認したら、VMLite Workstation Plugin をアンインストールしても問題無いようです。
ただし、「pcbios.bin」は忘れずにどこかにコピーしておく(保存しておく)必要があります(場所:C:\Program Files\VMLite\VMLite Workstation)。アンインストール前に必ず取得しておいて下さい。



4.VirtualBoxのアップデート

VirtualBox をアップデートします。
VirtualBox を起動し、ヘルプ->アップデートの確認、でダウンロード可能です。

ダウンロードしたら、インストールします。
特に複雑な設定はなく、次へ次へで設定可能です。

アップデート後、XP modeの仮想マシンを起動しようとすると警告がでるかもしれません。


仮想マシン"VMLite XP Mode"のセッションを開けませんでした。

Implementation of the USB 2.0 controller not found!

Because the USB 2.0 controller state is part of the saved VM state, the VM cannot be started. To fix this problem, either install the 'Oracle VM VirtualBox Extension Pack' or disable USB 2.0 support in the VM settings (VERR_NOT_FOUND).

終了コード : E_FAIL (0x80004005)
コンポーネント: Console
インターフェース: IConsole {1968b7d3-e3bf-4ceb-99e0-cb7c913317bb}



このときは https://www.virtualbox.org/wiki/Downloads から拡張パックをダウンロードしてインストールして下さい。
これも特に難しいこともなく、ダウンロードしたものをダブルクリックしてインストール、次へ次へで完了です。

また、VMLite Pluginをアンインストールしている場合、次の警告が出ます。


仮想マシン"VMLite XP Mode"のセッションを開けませんでした。

Failed to open system BIOS file 'C:/Program Files/VMLite/VMLite Workstation/pcbios.bin' (VERR_PATH_NOT_FOUND).

終了コード : E_FAIL (0x80004005)
コンポーネント: Console
インターフェース: IConsole {1968b7d3-e3bf-4ceb-99e0-cb7c913317bb}


この場合、先程コピーしたbiosファイルの場所の設定を変更する必要があります。
変更するファイルは「%USERPROFILE%\.VirtualBox\VMLite XP Mode」以下にある「VMLite XP Mode.xml」です。

変更する場所は以下の通りです(2ヶ所)
編集する前に、念のためxmlファイルのバックアップを取っておくとよいでしょう。

【1】
<ExtraDataItem name="VBoxInternal/Devices/pcbios/0/Config/BiosRom" value="C:/Program Files/VMLite/VMLite Workstation/pcbios.bin"/>
のvalue値を実際のbiosファイルを保存した場所に変更します。
(vhdと同じフォルダに保管しておくとよいかもしれません)

【2】
<Logo fadeIn="true" fadeOut="true" displayTime="0" imagePath="C:/Program Files/VMLite/VMLite Workstation/bios-logo.bmp"/>
を削除します。




この方法ならVMLiteを使わなくてよく、手間もかからない。
  • VirtualBox 4.1.x をインストール
  • NHCで XP Mode の Windows XP Mode base.vhd を .vdi に変換
  • 変換した .vdi で新規仮想マシンを作る
  • VBoxDD2.dllを書き換える
  • 仮想マシンを起動する
  • Guest Additionをインストール、Virtual PC 総合コンポーネントをアンインストール

VBoxDD2.dllの書き換え方法
C4 CE B8 45 02 50 FF 76 FE E8 2D 74 83 C4 04 30 E4 D1 E0 88 46 FD B8 46 02 50 FF 76 FE E8 19 74 83 C4 04 30 E4 02 46 FD 80 D4 00 88 46 FD 31 C0 50 B8 74
を検索し
57 69 6E 64 6F 77 73 5F 56 69 72 74 75 61 6C 5F 58 50 5F 46 39 31 36 31 44 38 45 37 46 43 43 31 31 44 44 42 46 41 41 33 36 39 38 35 36 44 38 39 35 39 33
に書き換える ( 文字は Windows_Virtual_XP_F9161D8E7FCC11DDBFAA369856D89593 )
元情報

書き換えはBZで文字の貼り付けが簡単、バイト値の検索は #C4 CE B8 (最初リードオンリーなので注意)


タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2012年09月20日 04:28
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。