WindowsXPからWindows8 (64bit + VHD boot化) のアップグレードに挑戦してみる。

■アップグレードする上での最低限やりたいこと

  1. どうせなら64bit化したい
  2. VHDブート化してバックアップを楽にしたい


■今試している手順を書き出してみる。

  1. WindowsXPをインストールした物理HDDを対象に、Microsoft製品の一般的な仮想ハードディスク(VHD)に変換する。
    (いわゆるP2Vというやつ、Disk2vhdで変換可能)
  2. Windows8 64bitのDISKを入れてブート起動しインストール画面を表示させる。
  3. 「Shift + F10」を押してcmd.exeを起動する。
  4. diskpartでP2VしたVHDをアタッチする。
  5. コマンドプロンプトを閉じる。
  6. Windows8のインストールをカスタムで進めれば完了??


■この手順でのメリット

  1. 既存の環境を残せるのでミスをしてもすぐに戻せる。
  2. VHD化によりVHDを定期的にバックアップする事で、環境を完全にバックアップ時点に戻せる。
  3. 64bit化により4GB以上のメモリを扱える


■デメリット
MetroUIに慣れるまでが一苦労?
(Office2007からリボンインターフェースを押しつけられているけれども、使いやすいと思ったことがない・・・)
個人的にはメリットの方が大きいので購入に至りました。


P2Vの問題点
物理HDDをP2Vしたときに物理HDDの最大容量がVHDにも記録される。
VHDを物理HDDより容量の低いSSDに入れたところ以下のBSODが発生した。
VHD_BOOT_HOST_VOLUME_NOT_ENOUGH_SPACE
この問題を解決するにはVHDに記録された容量をSSDの容量より低いサイズにリサイズする必要がある。


Hyper-Vマネージャーを利用する。
試してみたところインストール対象のPCではHyper-Vサーバを構築出来なかった。(Atom D525では仮想化機能がないため)
PowerShellのコマンドレットResize-VHDを利用する事で出来るかもしれない。
結果は以下の通り
Resize-VHD : ホスト 'Win8PC' の仮想マシン管理サービスが実行されていません。

残念ながらハードウェアの制限を超えることができませんでした。
単純にVHD編集したいだけなのに orz


[追記]
結局VHDResizerで何とか小さくできたっぽい。
これからできあがったVHDをアタッチしてアップデート予定


■参考サイト