WindowsのマスターPCの作成の際、Sysprepにてエラーが発生して困ったことはないでしょうか。
今回は代表的なエラー3つについて回避方法を紹介します。
この記事ではOSはWindows10以降を対象としています。
Sysprepのエラーについて
sysprepを実行したときにエラーで止まってしまうことがあります。
この場合は、C:\Windows\System32\Sysprep\Panther\ の
setupact.log(全体ログ) または setuperr.log(全体ログのエラー部分のみ記載) にて
エラー内容が記載されていますので、
エラー内容を参照して修正を実施する必要があります。
エラー内容は下記フォーマットで記載されています。
yyyy-MM-dd hh:mm:dd, Error エラー内容
致命的なエラーと表示されてしまった場合はいくら修正しようが必ず同じエラーとなり、
必ずマスターの再作成が必要となります!!
下記回避策は使用できません。
以下に、代表的な例と回避方法を紹介します。
エラーについては、1つ解消したからと言って、
再度Sysprepを掛けると別のエラーが発生することがありますので、
エラーに関してはすべて潰す必要があります。
BitLockerが掛かっている
BitLockerが掛かった状態ではSysprepはエラーとなります。
エラー内容としては下記のような内容が記載されています。
yyyy-MM-dd hh:mm:dd, Error SYSPRP BitLocker-Sysprep: BitLocker is on for the OS volume. Turn BitLocker off to run Sysprep. (0x80310039)
Windows10では、
そもそものBitLockerの要件とモダンスタンバイと呼ばれる機能を満たしているPCであれば
自動でBitLockerを実行してしまう仕様のようです。
ですので、自分ではBitLockerを掛けた覚えがないのに掛かっているためのエラーが表示されることがあります。
コントロールパネルのBitLockerの管理からBitLockerを解除するか、
コマンドプロンプト or PowerShellを管理者で起動し、
下記コマンドを実行して解除してください。
複数のドライブがある場合はすべて解除が必要となります。
manage-bde -off ドライブ名(例:c:、d:など)
必ず解除が終わったことを確認してからSysprepの実行を行ってください。
解除途中ではエラーとなります。
解除確認のコマンド(要管理者)は
manage-bde -status
となり、
暗号化された割合が 0.0% になっていることで確認できます。
解除確認のコマンドの最後にドライブ名を入力すると対象のドライブのみの確認ができます。
UWFアプリがインストールされてしまっている
インターネットに接続したタイミングとかで勝手にUWFアプリ(ストアアプリ)がインストールされていることがあり、
これが原因で失敗してしまうことがあります。
対処方法としては、エラーログに記載されているアプリをアンインストールします。
アンインストールはPowershellを起動し、下記コマンドを実行します。
get-appxpackage "アプリ名" -allusers | remove-appxpackage
アプリ名はワイルドカードが使用できるので、一部だけ入力し、残りに*を使うことで正式名称で入力する必要がなくなります。
ただし、ワイルドカード以外の所が少なすぎると、別のアプリも対象となってしまい、
必要なものまで消えてしまう可能性があるので注意してください。
#例:名前にxboxが含まれているアプリを全て削除
get-appxpackage "*xbox*" -allusers | remove-appxpackage
実際のエラー内容は下記のようになります。
yyyy-MM-dd hh:mm:dd, Error SYSPRP Package king.com.CandyCrushSaga_1.2351.1.0_x64__kgqvnymyfvs32 was installed for a user, but not provisioned for all users. This package will not function properly in the sysprep image.
yyyy-MM-dd hh:mm:dd, Error SYSPRP Failed to remove apps for the current user: 0x80073cf2.
上記例では
king.com.CandyCrushSaga_1.2351.1.0_x64__kgqvnymyfvs32
が邪魔をしていることを示しています。
アンインストールのコマンドとしては、
get-appxpackage "king.com.CandyCrushSaga_1.2351.1.0_x64__kgqvnymyfvs32" -allusers | remove-appxpackage
でアンインストールできますが、
ワイルドカードを使うことにより、
get-appxpackage "*CandyCrushSaga*" -allusers | remove-appxpackage
でもアンインストールが可能となります。
spopk.dllがおかしい
何かしらの影響で C:\Windows\System32\spopk.dllに変更が加えられてしまい、
失敗してしまうことがあります。
どうやら原因はこちらによるとWindows Updateが完全に完了していないためのようです。
ですので、Windows Updateが完了するまでUpdateを実施する必要があります。
なお、ネットで調べるとspopk.dllを古いバージョンのものと入れ替えるといいとの記載がありあますが、
上記リンクでも記載がありますが、ブルースクリーンの可能性がありますので、
あまり推奨はしません。
実際のエラー内容は下記のようになります。
yyyy-MM-dd hh:mm:dd, Error SYSPRP Sysprep_Clean_Validate_Opk: Audit mode can't be turned on if there is an active scenario.; hr = 0x800F0975
yyyy-MM-dd hh:mm:dd, Error SYSPRP ActionPlatform::LaunchModule: Failure occurred while executing 'Sysprep_Clean_Validate_Opk' from C:\Windows\System32\spopk.dll; dwRet = 0x975
まとめ
3つの代表的なエラーについて回避方法を紹介しました。
他にもエラーが発生することはあるかと思いますが、
その際はエラーログ見て適時対応してください。
ネットでエラー内容検索すれば大体は回避策載っているかと思います。