Hyper-V Server 2012 R2をUSBメモリにインストールする
概要
USBメモリから起動するHyper-V Server 2012 R2を用意しました。
作業手順は https://technet.microsoft.com/en-us/library/ee731893%28WS.10%29.aspx をなぞりました。
以下長々と書いておりますが、手順としてはこれだけです。
- 仮想ディスクを作成してHyper-Vのインストールイメージを展開
- USBメモリのbootcodeを更新し、BCDSTOREを作成
必要なもの
■ (2016/1/20追記) Windows 8以降の場合は、付属のコマンドがあるのでWindows ADK不要だそうです。Thanks! @Netwanderer
事前準備
- Windows 7以前の場合、Windows ADKをインストールします。必要なファイルをダウンロードするので時間がかかります。
作業手順
ステップ1: USBメモリのフォーマット
USBメモリをフォーマットします。正しいディスク番号を選択するように注意してください。
ここではZ:ドライブに割り当てました。
C:\>diskpart
Microsoft DiskPart version 10.0.10240
Copyright (C) 1999-2013 Microsoft Corporation.
On computer: xxxxxxx
DISKPART> list disk
Disk ### Status Size Free Dyn Gpt
-------- ------------- ------- ------- --- ---
Disk 0 Online 111 GB 0 B
Disk 1 Online 223 GB 0 B *
Disk 2 Online 465 GB 1024 KB *
Disk 3 Online 100 GB 0 B
Disk 4 Online 12 GB 0 B
Disk 5 Online 7635 MB 0 B
DISKPART> select disk 5
Disk 5 is now the selected disk.
DISKPART> clean
DiskPart succeeded in cleaning the disk.
DISKPART> create partition primary
DiskPart succeeded in creating the specified partition.
DISKPART> select partition 1
Partition 1 is now the selected partition.
DISKPART> active
DiskPart marked the current partition as active.
DISKPART> format quick fs=ntfs
100 percent completed
DiskPart successfully formatted the volume.
DISKPART> assign letter=z
DiskPart successfully assigned the drive letter or mount point.
DISKPART> exit
Leaving DiskPart...
ステップ2: VHDファイルの作成
USBメモリ上にサイズ固定のVHDファイルを作成し、NTFSでフォーマットします。
続く作業のためにR:ドライブに割り当てます。
DISKPART> create vdisk file=z:\hyperv.vhdx maximum=12288 type=fixed
100 percent completed
DiskPart successfully created the virtual disk file.
DISKPART> select vdisk file=z:\hyperv.vhdx
DiskPart successfully selected the virtual disk file.
DISKPART> attach vdisk
100 percent completed
DiskPart successfully attached the virtual disk file.
DISKPART> create partition primary
DiskPart succeeded in creating the specified partition.
DISKPART> assign letter=r
DiskPart successfully assigned the drive letter or mount point.
DISKPART> format quick fs=ntfs label=hyperv
100 percent completed
DiskPart successfully formatted the volume.
DISKPART> exit
Leaving DiskPart...
ステップ3: VHDへWIMを展開
下記はWIMファイルがf:\sources\install.wimにある場合です。
Windows 7以前の場合
Windows ADKのimagexツールを使ってHyper-VのWIMファイルを作成したVHDへ展開します。
C:\>"c:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\amd64\DISM\imagex.exe" /apply f:\sources\install.wim 1 r:
ImageX Tool for Windows
Copyright (C) Microsoft Corp. All rights reserved.
Version: 10.0.10011.16384
[ 100% ] Applying progress
Successfully applied image.
Total elapsed time: 7 min 40 sec
Windows 8以降の場合
Windows付属のDISMコマンドを使ってHyper-VのWIMファイルを作成したVHDへ展開します。
C:\>dism /apply-image /imagefile:f:\sources\install.wim /index:1 /applydir:r:\
Deployment Image Servicing and Management tool
Version: 10.0.10240.16384
Applying image
[==========================100.0%==========================]
The operation completed successfully.
ステップ4: bootcodeを更新
Windows ADKまたはWindows付属のbootsectコマンドを使ってUSBメモリのbootcodeを更新します。
下記はWindows ADK付属のコマンドを使う場合です。
C:\>"c:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\amd64\BCDBoot\bootsect.exe" /nt60 z: /force /mbr
Target volumes will be updated with BOOTMGR compatible bootcode.
Z: (\\?\Volume{5c881b51-b59f-11e5-9bf4-6c626de1b411})
Forced dismount complete, open handles to this volume are now invalid.
Successfully updated NTFS filesystem bootcode.
\??\PhysicalDrive4
Successfully updated disk bootcode.
Bootcode was successfully updated on all targeted volumes.
ステップ5: USBメモリにBCDSTOREを作成
前ステップで仮想HDDのマウントが外れてしまったので再度マウント
DISKPART> select vdisk file=z:\hyperv.vhdx
DiskPart successfully selected the virtual disk file.
DISKPART> attach vdisk
100 percent completed
BCDSTOREを作成します。
C:\>bcdboot r:\Windows /s z:
Boot files successfully created.
ステップ6: ページスワップを無効にする
仮想HDD内のレジストリハイブを読み込んで、ページスワップを無効にします。
C:\>reg load HKLM\HyperVTemp r:\windows\system32\config\system
C:\>reg add "hklm\HyperVTemp\ControlSet001\Control\Session Manager\Memory Management" /v PagingFiles /t REG_MULTI_SZ /d "" /f
The operation completed successfully.
C:\>reg delete "hklm\HyperVTemp\ControlSet001\Control\Session Manager\Memory Management" /v ExistingPageFiles /f
The operation completed successfully.
C:\>reg unload hklm\HyperVTemp
The operation completed successfully.
ステップ7: 再起動
仮想HDDをディスマウントして再起動します。
USBメモリから起動できるようになっていなければ、BIOS設定を変更します。
最後に
もしかすると rufus を使えば一発で作業が終わるかもです。
rufusはこちら → http://rufus.akeo.ie/