こんにちは! Hyper-V環境で、あるホストサーバーから別のホストサーバーへ、エクスポート&インポート機能を使ってWindows 11の仮想マシン(VM)をコピー・移動したことはありませんか?
「インポートも無事に完了したし、さあ起動!」と思ったら、なぜかエラーで起動しない……。
画面を見てみると、不穏なメッセージが。 「キーの保護機能をラップ解除できませんでした」
今回は、Windows 11の仮想マシンを移行する際に高確率で遭遇するこのエラーの原因と、一発で解決するための手順を分かりやすく解説します!
1. エラーの原因:仮想TPMの「暗号化キー」が引き継がれていない
Windows 11の仮想マシンを構築する際、必須要件である「TPM(暗号化機能)」を有効にしている方が多いと思います。
Hyper-VでTPMを有効にすると、その仮想マシンの構成情報はホストサーバーが持つ「秘密鍵(証明書)」によって暗号化されて保護されます。
問題は、普通にエクスポート&インポートしただけでは、ホストサーバー側が持っている「暗号化を解くための証明書」まで移行先にコピーされないという点です。
そのため、移行先のホストサーバーが「鍵が足りなくて暗号化を解除できないよ!」と怒ってしまい、「キーの保護機能をラップ解除できませんでした」というエラーが発生します。
2. 解決手順:TPM証明書をエクスポート&インポートする
この問題を解決するには、移行元のホストサーバーから「Shielded VM Local Certificates」という証明書をエクスポートし、移行先のホストサーバーへインポートしてあげる必要があります。
手順は以下の通りです。
Step 1. 移行元のホストで証明書をエクスポートする
-
移行元のホストサーバーで、
Windowsキー + Rを押し、certlm.mscと入力して「ローカルコンピュータの証明書管理」を開きます。 -
「Shielded VM Local Certificates」➔「証明書」の順にフォルダを開きます。
-
中にある証明書を右クリックし、「すべてのタスク」 ➔ 「エクスポート」を選択します。
-
ウィザードに従って進め、秘密鍵をエクスポートします(パスワードの設定が必要です)。
⚠️ 割とガチでハマる罠:エクスポート先のデフォルト位置
certlm.msc(管理者権限)からエクスポートを保存する際、何も考えずにファイル名だけ入力して保存すると、デフォルトの出力先がC:\Windows\System32になってしまいます。 「保存したはずなのにファイルがない!」と焦りがちなので、必ずデスクトップやDドライブなど、分かりやすいフォルダを指定して保存しましょう。
Step 2. 移行先のホストで証明書をインポートする
-
エクスポートした証明書ファイル(.pfxなど)を、移行先のホストサーバーにコピーします。
-
移行先で再び
certlm.mscを開きます。 -
「Shielded VM Local Certificates」➔「証明書」フォルダを右クリックし、「すべてのタスク」 ➔ 「インポート」を選択します。
-
コピーしてきたファイルを指定し、先ほど設定したパスワードを入力してインポートを完了させます。
3. 証明書を入れたら、仮想マシンを起動!
移行先のホストサーバーに無事証明書がインポートできたら、準備は完了です。
Hyper-Vマネージャーから、起動しなかったWindows 11の仮想マシンをもう一度起動してみてください。今度は何事もなかったかのように、スムーズに起動するはずです!
まとめ
Windows 11からTPMが必須要件になったことで、Hyper-Vの仮想マシン移行の手順が1ステップ増える形になりました。
-
エラーが出たら
certlm.mscを思い出す -
保存先が
System32に迷い込まないよう注意する
この2点さえ押さえておけば、今後のサーバー更新や移行作業も怖くありません。同じエラーで仮想マシンが起動しなくて困っている方は、ぜひ試してみてくださいね!
