A long time ago, I wrote a blog post on how you can use System Center Virtual Machine Manager Bare-Metal Deployment to deploy new Hyper-V hosts. Usually, this works fine, but if you have more modern hardware, your Windows Server Image may not include the network adapter drivers. Now, this isn’t a huge problem since you can mount and insert the drivers in the VHD or VHDX file for the Windows Server Hyper-V image. But if you forget to update the WinPE file from Virtual Machine Manager your deployment will fail, since the WinPE image has not network drivers included it won’t be able to connect to the VMM Library or any other server.
You will end up in the following error and your deployment will timeout on the following screen:
“Synchronizing Time with Server”
If you check the IP configuration with ipconfig, you will see that there are no network adapters available. This means you have to update your SCVMM WinPE image.
First of all, you have to copy the SCVMM WinPE image. You can find this wim file on your WDS (Windows Deployment) PXE Server in the following location E:\RemoteInstall\DCMgr\Boot\WIndows\Images (Probably your setup has another drive letter.
I copied this file to the C:\temp folder on my System Center Virtual Machine Manager server. I also copied the extracted drivers to the C:\Drivers folder.
After you have done this, you can use Greg Casanza’s (Microsoft) SCVMM Windows PE driver injection script, which will add the drivers to the WinPE Image (Boot.wim) and will publish this new boot.wim to all your WDS servers. I also rewrote the script I got from using drivers in the VMM Library to use drivers from a folder.
$mountdir = "c:\mount" $winpeimage = "c:\temp\boot.wim" $winpeimagetemp = $winpeimage + ".tmp" $path = "C:\Drivers" mkdir "c:\mount" copy $winpeimage $winpeimagetemp dism /mount-wim /wimfile:$winpeimagetemp /index:1 /mountdir:$mountdir dism /image:$mountdir /add-driver /driver:$path Dism /Unmount-Wim /MountDir:$mountdir /Commit publish-scwindowspe -path $winpeimagetemp del $winpeimagetemp
This will add the drivers to the Boot.wim file and publish it to the WDS servers.
After this is done, the Boot.wim will work with your new drivers.
Tags: Bare-metal, Boot.wim, Cloud, CloudOS, Hyper-V, Microsoft, PowerShell, Private Cloud, publish-scwindowspe, PXE, SCVMM, System Center, System Center 2012, System Center 2012 R2, Virtual Machine Manager, VMM, WDS, Windows Server, Windows Server 2012, Windows Server 2012 R2, WinPe Last modified: August 24, 2019
Following your description I added the Drivers – but WinPE does not load them.
I checked if they would generally work by loading them manually (drvload.exe c:\Drivers\C240M3L\NET01\enic6x64.inf) – just wonderful. But BMD does´nt work this way…
Any guess how to solve it?
Don’t forget the /Recurse switch if adding drivers from a tree of subfolders. Good post, very helpful!
Thanks for a great tip! Solved my deployment issue.