ESXiからHyper-Vに仮想マシンをクローンするとブルースクリーン

kiuyu

2013/05/31

現象

ESXi上のWindows Server 2003を入れている仮想マシンを、ClonezillaやAcronis TrueImage?等ディスクのイメージバックアップを取るソフトでクローンしても、Hyper-V上で起動するとブルースクリーンが表示されて起動しない。ブルースクリーンにはSTOP: 0x0000007Bと表示される。

原因

ブートディスクがSCSI→IDEになったため。

ESXiでウィザードに従ってWindows Server 2003の仮想マシンを作ると、ブートディスクはSCSIになる。一方で、Hyper-VはブートディスクはIDEであるため、起動できない。

Hyper-VでLinuxを動かそうと思ったことが無いけど、Linuxでもsda→hdaになるわけだから、GRUBとfstabいじらないとダメなんだろうな。

対応

クローンする前に以下のレジストリを入れておく。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CriticalDeviceDatabase\primary_ide_channel]
"Service"="atapi"
"ClassGUID"="{4D36E96A-E325-11CE-BFC1-08002BE10318}"

ESXiのVMにIDEのCD-ROMドライブが設定されていることが前提。CD-ROMはセカンダリIDEになっているので、プライマリIDEのデバイスを追加してやれば良い。一切IDEデバイスが無い場合は色々面倒そう。

参考

逆(Hyper-V→ESXi)の場合

ESXiならば起動ディスクをIDEにできるので、素直にIDEを起動ディスクにすれば良い。Hyper-VはIDE以外起動ディスクにできないので、一手間必要。