web-dev-qa-db-ja.com

Windows 10 ProでHyper-Vが有効になっている場合、ラップトップは休止状態になりません

ラップトップでHyper-Vを実行しています-Docker for Windows要件。

Windows 10バージョン1709。Hyper-Vの役割が有効になっていると、休止状態が機能しないことに気付きました。この役割を無効にすると、休止状態は正常に機能します。

私が知っているように、それはWindows Serverで予想される動作ですが、何らかの理由でWin10でこれを取得しています。

powercfg /a

休止状態が利用可能な状態であると言います。

しかし私は試しました(助けにはなりませんでした):

powercfg /h on

また、ラップトップをシャットダウンすることはできませんでしたが、高速ブート機能を無効にすることは役に立ちました。

3
Maxim Vershinin

これは、hypervがオンになっているときの通常の動作です。残念ながら、それを回避する方法はありません。

1
Sybreeder

あなたがする必要があるのはBIOSに入ってIntelVT-dを無効にすることだけです。それが仮想化テクノロジーのダイレクトI/Oです。

再起動してスリープ状態に戻ります...お楽しみください...

1
Jeff Castro

Hyper-Vサービスの実行中に休止状態またはスリープ機能を有効にする方法はありませんが、hvbootサービスの開始パラメーターを変更することでサービスの開始時期を制御できます-

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\hvboot]

サービスのStartプロパティには、0 =ブート、1 =システム、2 =自動、3 =デマンド、4 =無効の値を指定できます。

必要なときにサービスを開始できるように、値を3に設定します。 0はhvbootではサポートされていません。

サーバーを再起動します。これで、hvbootサービスを開始するまで、休止状態とスリープが有効になっているはずです。

ただし、hyper-vコンソールで仮想サーバーを起動しようとすると、hyper-vサービスが実行されていないというエラーが表示され、netstartコマンドを使用して手動で起動する必要があります。これを行うには、管理者権限でコマンドプロンプトを開始し、次のコマンドを実行してサービスを開始します。

net start hvboot

これで、仮想マシンを起動できるようになります。ただし、副作用として、マシンを再起動するまで休止状態とスリープが無効になります。


レジストリの調整は危険な場合があるため、安全な代替手段が必要な場合は、次のコマンドを使用して、hvbootサービスのStartプロパティも設定できます-

sc config hvboot start = request

使用できる他の値は、system、auto、demand、disabledです。ブートはサポートされていません。また、=とデマンドの間のスペースにも注意してください。 service configの構文には、このスペースが必要です。

Windows 10に適用できるかどうかはわかりませんが、試してみる価値はあります。ソース: https://blogs.msdn.Microsoft.com/tejas/2009/03/10/hibernate-and-sleep-with-hyper-v-role-enabled/

1
Mr. Raspberry