2016/07/04

Nano Server の RamDiskBoot には UEFI セキュアブートが必要っぽい

Windows Server 2016 Technical Preview 5 (TP5) の Nano Server は RamDiskBoot (ディスク レス サバーのブート) をサポートしたのですが、なかなか確認する手段がありませんでした。

Windows PE のブート メディアを改造して、やってみたのですが、SECURE_BOOT_VIOLATION というBSOD エラーで失敗。

もしかして、セキュアブートが必須要件?

ということで、我が家には、セキュアブートを利用できる物理マシンがないので、Hyper-V の第 2 世代仮想マシンを使って RAMDISKBOOT に挑戦...


WIM イメージはこんな感じで作成しました。本来なら、-DeploymentType Guest を Host にするのですが、今回は仮想マシンを起動するので Guest。

PS D:\Work> New-NanoServerImage -Edition Datacenter -DeploymentType Guest -MediaPath E: -BasePath .\Base -TargetPath .\nanoservercustom.wim -ComputerName mynano01 -EnableEMS


どうやって RAMDISKBOOT すればよいのか悩みどころですが、Windows PE のブータブル ISO イメージの boot.wim を置き換える方法でやってみました。

Windows PE 作成ツールは、Windows ADK for Windows 10 バージョン 1511 を使用。

Windows ADK のダウンロード
[URL] https://developer.microsoft.com/ja-jp/windows/hardware/windows-assessment-deployment-kit

スタート メニューから Windows Kits\展開およびイメージング ツール環境 を開いて、x64 版の PE イメージを準備して...

C:\...\Deployment Tools> copype amd64 D:\WORK\WINPEX64


Nano Server のカスタム イメージを boot.wim に上書きして...


C:\...\Deployment Tools> copy nanoservercustom.wim D:\WORK\WINPEX64\media\sources\boot.wim
Oscdimg で ISO イメージを作成。

C:\...\Deployment Tools> oscdimg -m -o -u2 -udfver102 -bootdata:2#p0,e,bD:\WORK\WINPEX64\fwfiles\etfsboot.com#pEF,e,bD:\WORK\WIN10TP\WINPEX64\fwfiles\efisys.bin D:\WORK\WIN10TP\WINPEX64\media D:\WORK\WIN10TP\WINPEX64\nanoramdiskboot.iso

参考:
How to create an ISO image for UEFI platforms for a Windows PE CD-ROM for Windows Server 2008 

[URL] https://support.microsoft.com/en-us/kb/947024

VHDX なしの第 2 世代仮想マシンに ISO イメージを接続して CD/DVD から起動すると、BSOD なしで起動。ネットワーク アダプター (統合デバイス) の IP アドレスを取得できているので、Hyper-V の仮想マシンのゲスト OS は起動していそうです。ただし、Nano Server Recovery Console は非表示、名前付きパイプ経由の EMS 接続は無反応、PowerShell Remoting、PowerShell Direct は Certificate.format.ps1xml が見つからないと言われて失敗。

↓仮想マシンには仮想ハード ディスク (VHDX) なし。



唯一、WINRM/WINRS でリモート接続は成功。ちゃんと、RAMDISK (X:) から起動しているっぽい。


セキュア ブートを無効にして、もう一度、CD/DVD から起動してみると...

やっぱり。

で、RAMDISKBOOT できて何がうれしいんだろうか。何に使うんだろうか。

0 件のコメント: