ジャンル不定の日記です。

Virtualbox上にVistaのリカバリができた!

昨日は32bitのWindows XPが入ったノートのVirtualboxへのP2Vを試みて成功しなかったが、
学生時代の支給品なんでOEMライセンスのHome EditionがついてるがボリュームライセンスのProfessionalが入ってる状態だったんで、
P2Vではなく、システム情報偽装したらOEM版のリカバリができないか?
と気づいた。

FMVのリカバリディスク探して試してみたんだが、
普通にVirtualboxの仮想環境を作って試みると、最初に黒い画面で「ERROR: この装置では実行することができません。」と出て失敗する。

そして、
VBoxInternal/Devices/pcbios/0/Config/DmiSystemProduct
VBoxInternal/Devices/pcbios/0/Config/DmiSystemVendor
の2つをdmidecodeで確認していたとおりに設定してみたら、突破した。

行ける!
と思ったが、[リカバリ]を選択したらまたチェックが始まって失敗した。
HDDが実機と違うからかと思って、P2Vを試みた時に作った実HDDをイメージ化した.vdiを当ててみたが、ダメ。
他にもdmidecodeで確認できる情報をExtraDataItemに設定していったが、無理だった・・・
たぶん、BIOSとかアップデート可能なものはチェックしないと思うんで、IDEコントローラの名前とかで確認しているんじゃないかと思うんだが、用意されているもの以外には変えれないよね?


まあ、XPのP2VとOEMのリカバリは断念したんだが、
他にVista(32bit Home Premium)がプリインされてたHPのノートがあって、
ノートをLinux化する時にリカバリディスクを作成したはずが、リカバリできなかったのを思い出した。
リカバリディスクの方の作成失敗の可能性も高いと思ってたが、リカバリしようとした時にDVDドライブがぶっ壊れてたんで、ディスクの方は使えるかも・・・
というわけで、Vistaのリカバリディスクを使ってVirtualbox上にインストールを試みた。

まず、普通に仮想環境を作成して、リカバリディスクで起動。
ディスクの起動自体はすることを確認できたが、当然HPのノートじゃないのでリカバリ不能。

で、システム情報書き換えてったら、リカバリできたw
書き換えたのは以下。
DmiSystemVendor
DmiSystemProduct
DmiSystemSerial
DmiSystemUuid
DmiSystemFamily
DmiSystemSKU
一個づつ設定して確認したんで、DmiSystemSKUは確実に必須。他は不要なのもあるかも。
DmiBIOSXxxxx系は一個も設定してない。BIOSはアップデートで変更がありえるからチェックしないと思う。

前の記事でも書いたが、設定は、
$ VBoxManage setextradata "VM名" "VBoxInternal/Devices/pcbios/0/Config/DmiSystemVendor" "Hewlett-Packard"
って感じで設定していく。
実機のデータは、
# dmidecode
で確認できる。リダイレクトでテキストファイル化しとくと良いと思う。

一箇所罠?っぽいのがあったんだが、
Product Nameの末尾に半角スペースが2つ付いてた。そのとおりにスペース付きで設定した。




まあ、こんな感じ。
OEM版だから、インストール出来ちゃえばアクティベートも自動。(違った。コントロールパネルから認証必要だった。すんなり成功した。)
Vista世代のHP機なら同じような感じで仮想化できると思う。
ちなみに、初期値の25GBで環境作ったが、インストール直後で9GiB以上持ってかれたw

Vistaはまだサポート期間残ってるんだよね。(2017年4月11日まで)
使えるWindowsが64bitのXPしかない状況だったから、仮想とはいえ32bitのVistaが使えるのは嬉しいわ。
32bitのVistaで使えるワンセグチューナー持ってるんだが、Virtualbox上で使えないかな?