最近、HP EliteBook上で実行されているWindows 10でVT-xに問題が発生し始めました。以前はいくつかのVMを実行するためにOracle VirtualBoxを使用していましたが、VT-xはBIOSで有効にされて正常に動作していました。
VMを起動しようとするたびにVT-x is not available
エラーが出始めました。それは私のマシンにDockerをインストールした後に起こり始めたので、私はそれをアンインストールして再起動しようとしました。助けにはならなかった。
BIOS設定を確認したところ、VT-xが有効になっていると表示されましたが、Intel(R)Processor Identification Utilityで確認したところ、VT-xはサポートされていません。
ハードウェアの変更はなく、唯一のソフトウェアの変更はDockerのインストール/アンインストールでした。
この問題はどのように修正できますか?
ユーザーに表示されるエラーの種類には、3つの一般的な原因があります。
ユーザーは最初の2つの原因を既に排除しているので、次のステップは[管理者としてプロンプト]コマンドを開き、次のコマンドを実行することです。
dism.exe /Online /Disable-Feature:Microsoft-Hyper-V
その後、PCを再起動してVirtualBoxをもう一度試してください。
Windows 10を "Fall Creators Update"にアップデートした後、同じ問題が発生しました。私は以下のステップでそれを解決しました:
私がこの問題を抱えていたとき、私が64ビットの仮想マシンを作成しようとしたとき、VMWareプレーヤーはVirtualBoxより良い診断応答をしました。
私のマシンはエンタープライズ機能Device GuardとCredential Guardが有効になっていると言われています。 MalwareBytesを実行したときにそれらが有効になったと思います。私が他に行った変更について考えることはできません。
VMWare Playerは、 Manage Windows Defender Credential Guard というページを表示しました。そのページには、グループポリシーマネージャの設定などに関する多くの情報が含まれています。これらは、W10 HOMEのインストールには無関係です。
次に、そのページで、 Device GuardとCredential Guardのハードウェア準備ツール を紹介しました。これは、サーバーでこの機能セットを有効または無効にするためのツールです。
そのツールを管理者として実行のPower Shellで実行し、このコマンドを実行する
.\DG_Readiness_Tool_v3.5.ps1 -Disable -AutoReboot
これらの機能を無効にするプロセスを私に案内しました。
そして、私は仮想化機能を取り戻しました。
オフにするWindowsの機能]ダイアログボックスで2つのオプションがあったという事実に私はトリップアップしました:
私はVirtualBox 6へのアップグレードといくつかのパフォーマンスの問題を試み、VirtualBox 5にダウングレードしてこれらの問題を抱えていました。うまくいけば、これは他の誰かを助けます。
Virtualboxは問題なく動作していました。 2017年6月29日、今日Avastアンチウイルスを更新しました。その後VirtualboxはVT-xエラーを出しました。 Avastの設定で、トラブルシューティングに進み、 "利用可能な場合はネストされた仮想化を使用する"を有効にしてからPCを再起動してください。これは他の変更を必要とせずに私のために働いた。
別の回答で述べたように、 コア分離 、アプリケーションガード、クレデンシャルガード、およびデバイスガードはHyper-V機能を利用します。そのレベルのセキュリティが必要ない場合は、次のコマンドを実行して無効にすることができます。
DG_Readiness_Tool_v3.5.ps1 -Enable -AutoReboot
または
mountvol X: /s
copy %WINDIR%\System32\SecConfig.efi X:\EFI\Microsoft\Boot\SecConfig.efi /Y
bcdedit /create {0cb3b571-2f2e-4343-a879-d86a476d7215} /d "DebugTool" /application osloader
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} path "\EFI\Microsoft\Boot\SecConfig.efi"
bcdedit /set {bootmgr} bootsequence {0cb3b571-2f2e-4343-a879-d86a476d7215}
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} loadoptions DISABLE-LSA-ISO,DISABLE-VBS
bcdedit /set {0cb3b571-2f2e-4343-a879-d86a476d7215} device partition=X:
bcdedit /set hypervisorlaunchtype off
mountvol X: /d
これらのコマンドの詳細については、 Windows Defender Credential Guardの管理 を参照してください。
ただし、 Windows 10ビルド18305以降 、保護機能のほかに、 Windows Sandbox もHyper-Vを有効にします。これは仮想化の薄い層でもあるためです。
サンドボックス機能を使用する場合は、残念ながら他の回答のようにHyper-Vを無効にすることはできません。これには2つの解決策があります
Hyper-V内で他のハイパーバイザーを実行できるように、ネストされたページングを有効にします。単にその機能を有効にするために下記のコマンドを実行してください
Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true
詳しくはこちら
Hyper-Vが「物理コンピュータではサポートされていないプロセッサ固有の機能を使用している」とHyper-Vが言っていたので、VT-xが有効になっていないと考えてこの投稿に行きました。これは、Windowsアップデートをインストールし、サーバーを再起動した後に始まりました。実際には、VT-xは実際に有効になっていました。
修正はすべてのVMの保存された状態を削除することで、事実上電源がオフになりました。
これは、CPUマイクロコードの更新によるものかもしれませんが、確かなことではありません。多くの検索結果から生まれたものです。
Virtualboxでも同じ問題があり、コンピューターで次のことを確認しました
上記の理由を除外した後、Windows Sandboxを有効にしたことを思い出しました。これは post です。
問題はWindows Sandboxにありますが、Windows機能からWindows Sandboxを無効にするだけで、再起動は機能しません。上記の投稿から説明されているように、以下を実行する必要があります。