2012年7月26日木曜日

Windows Server 2008 R2のP2V

現状、物理サーバにて稼働しているWindows Server 2008 R2を仮想化する作業を行いました。その時の手順を記載します。



仮想環境としては、VMware ESXi 4.1を使用しています。

1.稼働しているWindows Server 2008 R2をシャットダウンし、Acronisを使用してイメージバックアップを取得します。

2.VMware vCenter Converter Standalone Clientを使用して、1で取得したイメージファイルを仮想ディスクに変換します。同時に、ESXi上に展開する設定とします。

3.VMware vSphere Clientにて電源をオンにしたところ、下記のメッセージが表示され起動できませんでした。


Windows を起動できませんでした。最近のハードウェアまたはソフトウェアの変更が原因で可能性があります。この問題を解決するには。

1. Windows のインストール ディスクを挿入し、コンピューターを再起動します。
2. 言語の設定を選択し、「次」をクリック
3. [コンピューターを修復する"をクリックします。

このディスクが手元にない場合は、システム管理者またはコンピューターに問い合わせてください製造元に相談します。

ステータス: 0xc000000e

Info は、必要なデバイスにアクセスできないため、ブート選択でした。


Windows Vista以降のOSでは、OS領域とは別に100MBの「システムで予約済み」パーティションが作成されています。本来はこのパーティションにはドライブ文字列は割り当てられていないのですが、P2Vを行った際に、このパーティションがC、OS領域のパーティションがDに割り当てられていました。
また、ブート ローダーの設定内容の下記の箇所がunknownになっていました。

Windows ブート ローダー
--------------------------------
identifier              {current}
device                  unknown
path                    \Windows\system32\winload.exe
description             Windows Server 2008 R2
locale                  ja-JP
inherit                 {bootloadersettings}
recoverysequence        {49de1423-04bd-11df-b786-fd7058aec057}
recoveryenabled         Yes
osdevice                unknown
systemroot              \Windows
resumeobject            {49de1421-04bd-11df-b786-fd7058aec057}
nx                      OptOut


4.Windows Server 2008 R2のメディアから起動し、「コンピュータを修復する」を選択します。

5.コマンドプロンプトを起動します。

6.下記のコマンドを実行します。
bcdedit /store C:¥BOOT¥BCD /set {default} detecthal yes
bcdedit /set {default} device partition=D:
bcdedit /set {default} osdevice partition=D:

7.コマンドプロンプトを終了し、再起動します。

8.無事に起動したら、コマンドプロンプトにて下記のコマンドを実行します。
bcdedit /deletevalue {default} detecthal

あとは、アクティベーションをやり直し、VMware Toolのインストール等を行なって、P2Vの作業は終了です。