Most organizations are running Windows 7 on either legacy hardware or UEFI capable hardware but have disabled UEFI in favor of the legacy BIOS emulation and using an MBR partitioning style versus GPT. Prior to Windows 7, most deployment tools didn’t work with UEFI and there were almost no UEFI benefits for Windows 7, which is why the legacy configuration was preferred. But in Windows 10, there are some benefits like faster startup time, better support for resume/hibernate, security etc. that you’ll want to take advantage of.
Although not ideal for Windows 10, you could keep using legacy BIOS emulation (which will work just fine, and “be supported for years to come”) and deal with UEFI for new devices or as devices are returned to IT and prepared for redistribution. But if you want to take advantage of the new capabilities Windows 10 on UEFI enabled devices offers, you’ll essentially have to do a hardware swap because there’s no good way to ‘convert’ as it requires:
- changing the firmware settings on the devices
- changing the disk from an MBR disk to a GPT disk
- changing the partition structure
All coordinated as part of an OS refresh or an upgrade.
Now, I wouldn’t go as far as to say it’s not possible to automate the above (I love me a good challenge), but the recommended procedure is to capture the state from the old device, do a bare metal deployment on a properly configured UEFI device then restore the data onto said device.
If you’re imaging machines with MDT or SCCM and are PXE booting, all you need to do is:
- add the x64 boot media to your task sequence
- deploy your task sequence to a device collection that contains the machine you wish to image in question
- reconfigure the BIOS for UEFI
If however you’re imaging machines by hand with physical boot media, you’ll want a properly configured USB drive to execute the installation successfully.
There are loads of blogs that talk about creating bootable USB media but the majority of them don’t speak to UEFI. And those that do touch on UEFI, almost all of them miss that one crucial step which is what allows for a proper UEFI based installation.
What you need:
- 4GB+ USB drive
- a UEFI compatible system
- some patience
- USB drive = a USB stick or USB thumb drve – whatever you want to call it
- USB hard drive = an external hard drive connected via USB; not the same as above
- Commands I’m referencing are in italics
- Commands you have to type are in bold italics
Step 1 – Locate your USB Drive
Open an elevated command prompt & run diskpart
At the diskpart console, type: lis dis
At the diskpart console, type: lis vol
You should have a screen that looks similar to this:
I frequently have two USB hard drives and one USB drive plugged into my machine, so when I have to re-partition the USB drive, I have to be super extra careful. So to make sure I’m not screwing up, I rely on a few things to make sure I’m picking the proper device.
First: The dead giveaway lies in the ‘lis vol‘ command which shows you the ‘Type’ of device. We know USB drives can be removed and they’re listed as ‘Removable’. There’s only one right now, Volume 8 which is assigned drive letter E.
Second: I know that my USB drive is 8GB in size, so I’m looking at the ‘Size’ column in both the ‘lis vol‘ and ‘lis dis‘ commands to confirm I’m looking at the right device. And from ‘lis dis‘ I see my USB drive is Disk 6.
Step 2 – Prepare USB Drive
From the diskpart console, we’re going to issue a bunch of commands to accomplish our goal.
Select the proper device: sel dis 6
Issue these seven diskpart commands to prepare the USB drive:
- con gpt
- cre par pri
- sel par 1
- for fs=fat32 quick
That’s it! The second diskpart command above is the *most critical step* for properly preparing your USB drive for installing Windows on UEFI enabled hardware, and nearly all the popular sites omit that step. Bonkers!
Feel free to close the command window now.
Step 3 – Prepare the Media
With your USB drive properly setup now, all you need to do is mount the Windows 10 ISO and copy the contents to the USB drive.
If you’re on Windows 8 or Windows 10 already, right right-click the ISO and ‘Mount’.
If you’re on Windows 7, use something like WinCDEmu to mount the ISO.
Once mounted, you can copy the contents from the ‘CD’ top the USB drive.
Step 4 – Image
A this point all that’s left to do is
- boot your machine(s)
- make sure your BIOS is setup for UEFI versus Legacy BIOS; or simply enable ‘Secure Boot’ which on many machines sets UEFI as the default automatically
- boot from your USB drive
- install Windows
Hopefully this has helped point you in the right direction for taking advantage of all Windows 10 on UEFI enabled hardware has to offer.