Part 1 - Installing Windows 10 (1909) on the Host

04-12-2020 5:39 PM


Disclaimer: All information and content in these blog posts is provided without any warranty whatsoever. The entire risk of using this information or executing the provided content remains with you. Under no circumstances should Microsoft, its author, or anyone else involved in the creation of these blog posts be held liable for any damage or data loss.



  • DEVICE: Intel NUC 8i7BEH (See more specification)

  • CPU: Intelยฎ Coreโ„ข i7-8559U Processor (8 MB Cache, up to 4.50 GHz)

  • STORAGE 1: Samsung 860 EVO SSD 500 GB

  • STORAGE 2: Samsung 970 EVO Plus NVMe 2 TB

  • RAM: Samsung DDR4-2400 64 GB (2x32 GB)


  • Operating System: Windows 10 Enterprise 64-Bit (1909)

  • Hypervisor: Microsoft Hyper-V

The minimum hardware requirements to Install Windows 10 Enterprise 64-Bit are 1 GHz or faster processor speed (CPU), 2 GB Memory (RAM) and 32 GB of hard disk space (HDD).

I will be installing Windows 10 Enterprise 64-Bit (1909) on the host hardware mentioned above. Afterwards on the host I will add the Microsoft Hyper-V feature role and create a basic Microsoft Endpoint Configuration Manager LAB environment.



If you haven't customized the WinRE image, you could just skip this part.

Before I'll walk you through the Windows 10 Enterprise 64-Bit (1909) installation, then let's take a quick look at a small script that I've added to my bootable USB device and is used for disk partition.

Because I offline servicing my Windows 10 image and customizing WinRE to include DaRT, CMTrace and WMIExplorer, the default size of Recovery Partition (I believe the default size is 499 MB) is not enough, as my WinRE image becomes larger than 580 MB in size! So to fix this, I use the below DiskPart script to set the Recovery Partition to just under 1 GB "There's a longer explanation for exactly why it has to be under 1 GB, but trust me on this and let's save that explanation for another day... Or you could just read about the drive partition rules here and while you're at it, then read this blog post too - thanks David Segura"

DaRT is not freely available. It's part of the Microsoft Desktop Optimization Pack (MDOP)

Script (CreatePartitions-UEFI.txt)

rem ============================
rem == Create UEFI Partitions ==
rem ============================
  select disk 0
  convert gpt

rem =========================
rem == 1. System partition ==
rem =========================
  create partition efi size=260
  format quick fs=fat32 label="System"
  assign letter="S"

rem ===========================================
rem == 2. Microsoft Reserved (MSR) partition ==
rem ===========================================
  create partition msr size=128

rem ==========================
rem == 3. Windows partition ==
rem ==========================
  create partition primary 
  shrink minimum=980
  format quick fs=ntfs label="Windows"
  assign letter="W"

rem ==================================
rem === 4. Recovery tools partition ==
rem ==================================
  create partition primary
  format quick fs=ntfs label="Recovery"
  assign letter="R"
  set id="de94bba4-06d1-4d40-a16a-bfd50179d6ac"
  gpt attributes=0x8000000000000001

  list volume

Windows 10 Installation

Now boot the device with a bootable Windows 10 media.

Step 1. Select language and click "Next"

If you haven't customized the WinRE image, you would just click "Install now" and go straight to step 4.

Step 2. Before clicking on the "Install now" press Shift + F10 to open a Command Prompt and execute the DiskPart Script as shown below.

DiskPart /s CreatePartitions-UEFI.txt

Step 3. Close the Command Prompt and click "Install now"

Step 4. Read the License Terms "Hmm... Yeah right, like people actually does that..." Anyway, click "I accept the license terms" and then click "Next"

Step 5. Since this is a new installation, select "Custom: Install Windows Only (advanced)"

Step 6. The partitions are already created because we used the DiskPart script in step 2. So all I have to do now is choose the partition with "Windows" in its name in this case it's "Drive 0 Partition 3: Windows" then click "Next"

If you skipped step 2 you should instead see a "Drive 0 Unallocated Space" just leave everything default and then click "Next"

Step 7. Windows 10 should now be installing and the device may restart a couple of times during this process.

Step 8. After a couple of restarts you should now be presented with the OOBE (Out of Box experience) screen. Choose your region and click "Yes"

Step 9. Choose keyboard layout and click "Yes"

Step 10. I do not have a second keyboard layout to add, so I click "Skip"

Step 11. Since this is a host I want to create a local user, to do so I click "Domain join instead" in the bottom left corner.

Step 12. Give the local user account a name and click "Next"

Step 13. Enter a password for the local user account and click "Next"

Step 14. Create 3 security questions in case you forget your password. Click "Next" after each one.

Step 15. Since this is my host I choose "No"

Step 16. Since this is my host I choose "Don't use online speech recognition" and click "Accept"

Step 17. Since this is my host I choose "No" and click "Accept"

Step 18. Since this is my host I choose "No" and click "Accept"

Step 19. Since this is my host I just choose "Basic" and click "Accept"

Step 20. Since this is my host I choose "No" and click "Accept"

Step 21. Since this is my host I choose "No" and click "Accept"

Step 22. Since this is my host I choose "No" and click "Accept"

Step 23. Finally, the installation has completed successfully.

This should conclude the Installation of Windows 10 Enterprise 64-Bit (1909) on my host. In Part 2 I will be setting up the Hyper-V role and creating a NAT Switch by using PowerShell so that we can keep the LAB environment separate from the rest of the network, but still provide internet access to the VMs.

If you have any questions regarding this topic, feel free to reach out to me. I am most active on Twitter!

Last updated