How to create UEFI bootable USB media to install Windows Server 2016

Since Windows Server 2016 has been released, I grabbed the RTM ISO file and wanted to install a new server using a USB stick.

I configured the BIOS settings of the server to only boot UEFI and disabled the legacy boot.

Some of the key points to bear in mind:

  • A USB stick with more than 5.3GB is required
  • UEFI requires a FAT32 partition
  • FAT32 has some serious limitations and the size of the install.wim file exceeds those limits. This file requires therefore to be split into multiple more suitable parts

More on this here: https://blogs.technet.microsoft.com/askcore/2013/03/20/creating-bootable-usb-drive-for-uefi-computers/

Here’s how I created my USB boot media compatible with UEFI using PowerShell:

Advertisements

16 thoughts on “How to create UEFI bootable USB media to install Windows Server 2016

  1. BTW : you can use the Windows 7 USB/DVD download tool from Microsoft to successfully ‘burn’ the ISO Image to you USB drive.

  2. Hi,

    i am having a bit of an issue, i ran the script, it started , when it got to formatting the USB , it opened the windows format option and then it crashes.

    how can i fix that ?

    • PS C:\Users\phoareau\Desktop> .\iossplitwin2k16.ps1

      Confirm
      Are you sure you want to perform this action?
      This will erase all data on disk 2 “SanDisk Ultra USB 3.0”.
      [Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is “Y”): y

      Number Friendly Name Serial Number HealthStatus OperationalStatus Total Size Partition
      Style
      —— ————- ————- ———— —————– ———- ———-
      2 SanDisk Ul… 4C531001621109117444 Healthy Online 115.69 GB GPT
      Format-Volume : Size Not Supported
      Activity ID: {8f7de908-7d9c-4072-99b3-d216b2a88cff}
      At C:\Users\phoareau\Desktop\iossplitwin2k16.ps1:22 char:1
      + Format-Volume -FileSystem FAT32
      + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      + CategoryInfo : NotSpecified: (StorageWMI:ROOT/Microsoft/…age/MSFT_Volume) [Format-Volume], CimExcepti
      on
      + FullyQualifiedErrorId : StorageWMI 4097,Format-Volume

      You cannot call a method on a null-valued expression.
      At C:\Users\phoareau\Desktop\iossplitwin2k16.ps1:53 char:14
      + ParseName(“$($volume.DriveLetter):”).InvokeVerb(‘Eject’)
      + ~~~~~~~~~~~~~~~~~~~
      + CategoryInfo : InvalidOperation: (:) [], RuntimeException
      + FullyQualifiedErrorId : InvokeMethodOnNull

    • Put line 52 and 53 in one single line. Make sure there’s no extra (whitespace) character at the end of the line 52.

      (New-Object -comObject Shell.Application).NameSpace(17).ParseName("$($volume.DriveLetter):").InvokeVerb('Eject')
      
  3. One more thing to add, as my cardreader has many ports, so I have sevelart USB drives? but only one online (where card is inserted).
    So I just need to add one where clause:
    Where OperationalStatus -eq Online

  4. Pingback: Create Windows Installation Media to Boot via USB in UEFI Mode | Automatica

  5. What a time-saver, thanks a ton. I have dark memories of having to split the WIM file before but it has been so long I had to reinvent the wheel for my 2016 install and this hit the spot. Really fast.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s