2010-04-27

Hyper-V のゲスト OS として bkf アーカイブを復元してみる(1/2)

 既存の Windows Server 2003 サーバ機の環境を Hyper-V のゲスト OS にごっそり移行してみようということになり、試してみたのですが Hyper-V では自動システム回復 (ASR) セットからの復旧はやはり無理があることがわかりました。

 今回は失敗談を踏まえて、手動によるシステム状態の復旧までをまとめることにします。

 操作にあたり、以下のMicrosoft 社の技術情報ページを参考にしました。
 ハード的に独立したマシンを準備して、ページの記載どおりに操作すれば復旧はそれほど難しくないのではないかと思います。
Windows Server 2003 のデータをバックアップおよび復元する

 今回は Hyper-V のゲスト OS 環境で復旧作業をするということで、以下の問題がネックとなりました。

A. フロッピーディスクをどうやってゲスト OS に認識させるか。
 自動システム回復 (ASR) を行う場合は、元環境のパーティション情報はフロッピーディスクに記録されているため、フロッピーディスクを読み込ませる仕組みが必要となります。
 しかし Hyper-V のゲスト OS 環境では、物理的なフロッピーディスクを認識できないため、フロッピーディスクのイメージファイルを仮想フロッピーディスクファイル(.vfd)として保存し、それを読み込ませる必要があります。

 .vfd ファイル(イメージファイル)を作成するツールは Microsoft 社では提供されていないため、適当なツールをどこからか調達する必要があります。

 今回は K.Takata さんが公開している Read/Write FD というツールを使いました。
  Read/Write FD の仕様およびダウンロードページはこちら

 使い方は仕様のページに書かれているとおりですが、フロッピードライブを丸ごとイメージファイル化するには次のように指定します(.vfd 拡張子前のファイル名は任意です)。

 rwfd a: c:\fdimageW2003.vfd

 この操作で作成した .vfd ファイルをゲスト OS に認識させるための設定を行います。
 この .vfd ファイルは Hyper-V のホスト OS の適当な場所に保存しておきます(今回は f:\に入れることにします)。
 Hyper-V マネージャを開き、Windows 2003 用の仮想ハードディスクを割り当てた後で、設定を開き、以下の図のように仮想フロッピーディスクを割り当てて適用させます。
 


 この操作を行うことによって、ゲスト OS からフロッピーディスクを仮想的に読み込ませることが可能となります。

B. バックアップアーカイブ(.bkf)をどうやってゲスト OS に認識させるか。

 ASR による自動システム回復を行うにあたり、途中で .bkf の指定を求められるわけですが、Windows 2003 のインストーラでは、このファイルの配置場所として物理的に接続されている HDD デバイスを想定しているようで、ここで躓いてしまいました。
 この時点で自動システム復旧操作は断念せざるを得なかったわけですが、操作としてはなかなか面白いものでしたので、掲載することにします。

【操作手順】
1. ASR バックアップセットを作成する。
「スタート」→「すべてのプログラム」→「アクセサリ」→「システムツール」→「バックアップ」の順に選択すると、次のような画面が表示されるので、[常にウィザードモードで開始する]のチェックボックスを外して一度“キャンセル”をクリックしてプログラムを終了させます。



 もう一度バックアップツールを開くと、今度はバックアップウィザードが開きますので、画面一番下の「自動システム回復ウィザード(A)」を選択します。



 すると自動システム回復の準備ウィザードが開きますので、図のようにバックアップアーカイブ名を指定します(.bkf 前のファイル名は任意です)。
 “次へ”をクリックすると、バックアップが始まります。



注意:この操作を行うにあたり、パーティション情報がフロッピーディスクに書き込まれます(前述の仮想フロッピーの記述参照)。このため、フォーマット済のフロッピーディスクをフロッピーディスクドライブに入れておいてください。

 フロッピーディスクを作り忘れてしまった場合は、手動でも作成できます。
 フォーマット済のフロッピーディスクを用意し、C:\WINDOWS\repair\ 配下の asr.sif および asrpnp.sif をこのフロッピーディスクにコピーしてください。

2. Hyper-V 環境を準備する。
 Hyper-V 環境にゲスト OS 用の領域を割り当てておきます。
 このとき、システムドライブとなる vhd の容量は移行元のシステムドライブの容量と同じか、それ以上になるように設定します。
 この時点で前述にあったとおり、仮想フロッピーの設定も行います。

3. Windows Server 2003 インストーラーディスクを入れてゲスト OS を起動し、途中で ASR による復旧モードに入る。

 インストーラーディスクを入れてゲスト OS を起動するとインストールが始まります。
 程なくして Press F2 to run Automated System Recovery (ASR) というメッセージが画面下に表示されますので、ここで F2 キーを押すと、次の画面に切り替わります。



 フロッピーディスクを入れてくださいというメッセージですが、すでに仮想フロッピーディスクを設定してありますので、任意のキーを押すことによって、次のような画面が表示されます。



 C キーを押してパーティションの削除、修復を行うと、システムが一旦インストールされます。

 ある程度までインストールが進むと、インストーラがシステム状態のバックアップアーカイブを読み込もうとして以下のエラーが発生します。



 ローカル環境にバックアップアーカイブが無いのでこのようなエラーが発生するのは当然と言えば当然ですが、上記 1. の手順で作成した .bkf ファイルを DVD-R に焼いて読み込ませようとしても、この段階では Windows Server 2003 のインストーラが DVD ドライブの認識を行っていないようで、このバックアップアーカイブを読み込ませることができなかったため、この時点で自動復旧操作は断念しました。

 もし、同じような方法で ASR 操作がうまく行った方がいらっしゃったら、情報をいただけると幸いです。

 次回は手動システム復旧と、復旧後の注意事項についてまとめます。

0 件のコメント: