ブートメニューでHyper-Vの有効化のON/OFFを簡単に切り替える

概要

Hyper-Vを有効化するとDocker for Windowsが利用できますが、一方でVagrant(Virtual Box)やAndroid Emulator を動かすことができません。

開発プロジェクトによってはDockerを採用したりVagrantを採用したり状況によって様々なので、PC起動時のブートメニューでHyper-Vの有効化のON/OFFを切り替えられるようにしています。

元ネタ:

Switch easily between VirtualBox and Hyper-V with a BCDEdit boot Entry in Windows 8.1 - Scott Hanselman

環境

Windows 10 Pro

事前準備

  1. Hyper-Vは有効化した状態で作業開始します

  2. コマンドプロンプトを管理者権限で開きます

    「cmd」と検索して出てきた「コマンドプロンプト」上で右クリック -> 「管理者として実行」

    f:id:fly1tkg:20170906082227g:plain

  3. Hyper-Vを無効化したブート構成データを作成します

# ブート構成データ(BCD)をコピーします
C:\>bcdedit /copy {current} /d "No Hyper-V" 
# コピーされたブート構成データのGUIDが出力されます
The entry was successfully copied to {ff-23-113-824e-5c5144ea}. 

# 先ほどの操作で出力されたブート構成データのGUIDに対してHyper-Vを無効化します
# 下記のコマンドはGUIDとなっているところを先ほどのコマンドで出力されたGUIDで実行してください。
C:\>bcdedit /set {GUID} hypervisorlaunchtype off 
The operation completed successfully.

切り替え方法

  1. Shiftを押しながら再起動時をクリックするとブートメニューが開きます。

    f:id:fly1tkg:20170906083343p:plain

  2. 「別のオペレーティングシステムを使用」を選択します

    f:id:fly1tkg:20170906080902j:plain

  3. Hyper-Vの有効化のON/OFFに応じて起動する構成を選択します

    f:id:fly1tkg:20170906080917j:plain