Chris Hall bio photo

Chris Hall

Principal Technical Consultant

PolarCloudsUK Chris LinkedIn Github
Chris Hall Nutanix Certified Master - Multicloud Infrastructure 6 Chris Hall VMware vExpert 2024 Chris Hall VMware vExpert NSX 2023 Chris Hall Nutanix Certified Professional - Multicloud Infrastructure 6 Chris Hall Nutanix Certified Professional - Unified Storage 6 Chris Hall VMware vExpert 2023 Chris Hall VMware vExpert 2022

Windows 2012R2 Logo Previously we configured a Windows 2012R2 Windows Deployment Services (WDS) Server to deploy Windows installations over the network. In case you missed it, have a read here to see what we did.

Next, we upgraded our WDS server setup to also deploy VMware ESXi. Again have a read here to see what we did next.

Now it’s time use our WDS server to allow us to quickly boot some diagnostic tools.

This time: Windows Preinstallation Environment (WinPE).

Overview

Windows Preinstallation Environment Preamble

For those unfamiliar with it, Windows Preinstallation Environment (WinPE) is a lightweight version of Windows used for the deployment of PCs, workstations, and servers, or troubleshooting an operating system while it is offline. More info here.

For this, I’ll use my (now ancient) Windows 7 Preinstallation Environment (Win7PE) image I built with WinBuilder back in 2009. I’m not going to cover the creation of a Windows PE image here as there are plenty of guides out there that can show you how to create your own Win7PE image.

One such guide is here:


Although WinPE is described as being “lightweight” you can still end up with quite a hefty image to boot from. Certainly my old Win7PE ISO image weighs in at just over 370MB. Because of this, booting WinPE from CD/DVD is not quick.

Adding Win7PE to WDS Server

Lets speed up the time it takes for us to boot a Win7PE diagnostic CD/DVD.

On you WDS Server, open Windows Deployment Services tool (Start > Administrative Tools > Windows Deployment Services), expand the tree, right click Boot Images and select “Add Boot Image”: Add Win7PE to WDS 1

Insert / mount your Win7PE CD/DVD. Browse to the sources folder on the CD and click next: Add Win7PE to WDS 2

Enter a name and description for your Win7PE boot image: Add Win7PE to WDS 3

Click Next if all looks OK: Add Win7PE to WDS 4

Ahh a problem… Add Win7PE to WDS 5

The fix for the error “The boot files for this architecture are not installed on the server” is detailed below.

Try again… Add Win7PE to WDS 6

Done. A quick double check: Add Win7PE to WDS 7

Looks good.

Booting WinPE from WDS Server

PXE boot your machine as normal. Choose “Windows Deployment Services Boot” (feel free change the menu item to something like “Windows Deployment Services / Windows Preinstallation Boot” if you like): Add Win7PE to WDS 8

Select Win7PE: Add Win7PE to WDS 9

Give it a minute: Add Win7PE to WDS 10

Job’s a good-un: Add Win7PE to WDS 11

Well there you have it, network booting Windows Preinstallation Environment based diagnostics. Sooo much quicker to boot than a disc of spinning plastic! (CD/DVD etc)

Next time Acronis Disk Director and other tools.

-Chris




Fixing “The boot files for this architecture are not installed on the server” Error

What looks like quite a catastrophic error is actually quite easily fixed. Remember where we added our PXElinux files to our WDS sever here? Well, we need to temporarily back the boot file change out thus allowing us to add boot images to our WDS server.

Open explorer and browse to C:\RemoteInstall\Boot\x86.

Find the file pxeboot.0 and copy it to a new file called pxeboot.n12.

Next run the following from an administrative command prompt:

wdsutil /set-server /bootprogram:boot\x86\pxeboot.n12 /architecture:x86
wdsutil /set-server /N12bootprogram:boot\x86\pxeboot.n12/architecture:x86
net stop wdsserver
net start wdsserver 

Have another go at adding Win7PE to WDS

Once complete, don’t forget to swap the boot files back:

wdsutil /set-server /bootprogram:boot\x64\pxelinux.0 /architecture:x64
wdsutil /set-server /N12bootprogram:boot\x64\pxelinux.0 /architecture:x64
net stop wdsserver
net start wdsserver