先日、久々に自宅の仮想環境(Hyper-V)で、Windows10関連の動作検証を行おうと思い、
あらかじめ作成しておいた、Windows10のHyper-Vエクスポートファイルより、仮想マシンイメージを読み込みました。
今回、複数台のWindows10仮想ゲストが必要だった為、起動したWindows10仮想ゲストに対して、「Sysprep」をかけようとしたところ、うまくいかず、試行錯誤してしまいました。
Windows7やサーバーOSでは、ほとんど引っかかった事がなかった為、時間がかかったので、メモとして残しておこうと思います。
まず、いつものようにWindows10のC:\Windows\system32\sysprepフォルダより「Sysprep」を実行
SIDを変更したいので、「一般化する」にチェックを入れてOK
すると、以下表示がでました。初めて見るポップアップ
ポップアップ内に記載があるように、sysprepのエラーログファイルを確認してみたところ
7行目に怪しいログがありました
小さくて読みづらいですが、英語の文を読むと、「OSをアップグレードしたから、Sysprepをかけるには、OSをクリーンインストールしないと駄目ですよ」と。
「え~っ」そんな事知りませんでしたし、ただ、そんな事をしている時間もありません。
ググってみると、対処方法を記載しているサイトを見つけました。書かれた方のお名前はわかりませんが、参考になり、大変ありがとうございました!
参考URL:http://tsunomur.hateblo.jp/entry/20140211/1392103153
・以下2つのレジストリを削除と変更をします
あらかじめ作成しておいた、Windows10のHyper-Vエクスポートファイルより、仮想マシンイメージを読み込みました。
今回、複数台のWindows10仮想ゲストが必要だった為、起動したWindows10仮想ゲストに対して、「Sysprep」をかけようとしたところ、うまくいかず、試行錯誤してしまいました。
Windows7やサーバーOSでは、ほとんど引っかかった事がなかった為、時間がかかったので、メモとして残しておこうと思います。
Sysprep で 「Windowsの検証が行えませんでした。詳細については~」
まず、いつものようにWindows10のC:\Windows\system32\sysprepフォルダより「Sysprep」を実行
SIDを変更したいので、「一般化する」にチェックを入れてOK
すると、以下表示がでました。初めて見るポップアップ
ポップアップ内に記載があるように、sysprepのエラーログファイルを確認してみたところ
7行目に怪しいログがありました
小さくて読みづらいですが、英語の文を読むと、「OSをアップグレードしたから、Sysprepをかけるには、OSをクリーンインストールしないと駄目ですよ」と。
「え~っ」そんな事知りませんでしたし、ただ、そんな事をしている時間もありません。
ググってみると、対処方法を記載しているサイトを見つけました。書かれた方のお名前はわかりませんが、参考になり、大変ありがとうございました!
参考URL:http://tsunomur.hateblo.jp/entry/20140211/1392103153
・以下2つのレジストリを削除と変更をします
- HKEY_LOCAL_MACHINE\SYSTEM\Setupにある、Upgradeキーを削除する。
- HKEY_LOCAL_MACHINE\SYSTEM\Setup\Status\SysprepStatusにある、CleanupStateキーの値を、7に変更する。
Upgradeキーを削除
cleanupstateキーの値を7へ変更
再起動を行い、再度「Sysprep」を実行します
今度は進みました
喜びもつかの間、今度は「致命的なエラー」、え~っ、なんで~
そんな甘くはないですね。
再度、「setuperr.log」を確認すると、以下エラーが出力されてました
"C:\Windows\System32\Sysprep\Panther\setuperr.log"
[0x0f0073] SYSPRP RunExternalDlls:Not running DLLs; either the machine is in an invalid state or we couldn't update the recorded state, dwRet = 0x1f
[0x0f00ae] SYSPRP WinMain:Hit failure while processing sysprep cleanup external providers; hr = 0x8007001f
私の知識では限界ですので、ググります。
すると以下サイトで同様のエラー修復してましたので、またまた参考にさせていただきました。助かりました!
参考URL:http://codename2010.blog11.fc2.com/blog-entry-256.html
2つのレジストリ内容を変更します
確認したところ、「CleanupState」キーは2だったのでそのまま、「GeneralizationState」キーが違っていたので、7に変更します
変更したら、以下コマンドを打ちます
再起動します
無事、sysprepを完了する事ができました。
やっぱり、最近のOSは手強いな~
cleanupstateキーの値を7へ変更
再起動を行い、再度「Sysprep」を実行します
今度は進みました
喜びもつかの間、今度は「致命的なエラー」、え~っ、なんで~
そんな甘くはないですね。
Sysprepで「致命的なエラー」
再度、「setuperr.log」を確認すると、以下エラーが出力されてました
"C:\Windows\System32\Sysprep\Panther\setuperr.log"
[0x0f0073] SYSPRP RunExternalDlls:Not running DLLs; either the machine is in an invalid state or we couldn't update the recorded state, dwRet = 0x1f
[0x0f00ae] SYSPRP WinMain:Hit failure while processing sysprep cleanup external providers; hr = 0x8007001f
私の知識では限界ですので、ググります。
すると以下サイトで同様のエラー修復してましたので、またまた参考にさせていただきました。助かりました!
参考URL:http://codename2010.blog11.fc2.com/blog-entry-256.html
2つのレジストリ内容を変更します
HKEY_LOCAL_MACHINE\SYSTEM\Setup\Status\SysprepStatus\GeneralizationState\
CleanupState:2
HKEY_LOCAL_MACHINE\SYSTEM\Setup\Status\SysprepStatus\GeneralizationState\
GeneralizationState:7
確認したところ、「CleanupState」キーは2だったのでそのまま、「GeneralizationState」キーが違っていたので、7に変更します
変更したら、以下コマンドを打ちます
msdtc –uninstall
msdtc –install
再起動します
無事、sysprepを完了する事ができました。
やっぱり、最近のOSは手強いな~
コメント