MDT Error 0xc0000001

In the midst of attempting to deploy out a new Windows Server 2019 installation I came across a new issue. As mentioned in the title of this quick block. My remote virtual machine posted the error 0xc0000001 which was odd since I was able to PXE call from my onsite domain controller (DC02) and start to load the boot file config.

After some research and a few cups of coffee I found that the resolution to this issue was the Enable Variable Windows Extension. To fix this follow the instructions below…
1. Open your Windows Deployment Services app or WDS
2. Right click on your WDS server in the left pane
3. Left click on Properties
4. Click on the TFTP tab within the properties window
5. Uncheck Enable Variable Windows Extension
6. Lastly Reboot your WDS Server

If you followed all the steps above correctly you should be able to PXE boot your VM from MDT now. Enjoy!


Install Windows Server 2019

After the ISO loads on your physical or virtual server. Follow the instructions below to install the operating system.

Click on Install Now

Select your version that you’d like to install. Mine is a little different since its a custom ISO for Vultr.

Accept the terms and conditions for the installation.

For this lab, select the Custom: Install Windows only (Advanced)

Choose the disk that you’ve assigned to the virtual machine or select the only one that is available.

Allow Windows to install on the disk until completed.

After the installation completes you should be prompted to create a password for the local account. As usual, choose a good password.


How To Install Server 2019 On VMware

I’m going to show you how to install Server 2019 on a VMware based platform. For most readers, you’ll probably be in a situation where either you are moving on from an earlier version or installing a fresh copy. For this guide, were going to go through and install a fresh copy.

System Requirements (Estimated)

  • Processor – 1.4 GHz 64-bit processor
  • RAM – 512 MB
  • Disk Space – 32 GB
  • Network – Gigabit (10/100/1000baseT) Ethernet NIC
  • Optical Storage – DVD drive (if installing the OS from DVD media)
  • Video – Super VGA (1024 x 768) or higher-resolution (optional)
  • Input Devices – Keyboard and mouse (optional)
  • Internet – Broadband access (optional) 

Installation

We’ll want to download the evaluation ISO from the Microsoft website. You do have other options to download a VHD or setup an Azure instance, which, we’ll cover in another article.
Windows Server 2019 Evaluation Download

Once you’ve selected the ISO evaluation you should expect a 4.9GB download to start. If you are on Windows the download will be located under your Downloads folder or C:\Users\User\Downloads. After the download is complete, for my case, we’ll open up the VMware console.

Choose the ESXi host – 192.168.4.13, right click, and select create a New Virtual Machine…
See the slideshow below for details on how to setup the virtual machine before deploying the operating system.

  1. Select “Create a new virtual machine”.
  2. Create a name for the virtual machine – something that best fits your environment.
  3. If you have more than one host – select the host that you want to install the operating system on.
  4. Choose your storage. Again, this will be dependent on the environment you have in place. If you have shared storage you’ll want to select the correct datastore or direct storage.
  5. For compatibility reasons, I’ve selected ESXi 6.5 and later…
  6. Select the correct Guest OS information.
  7. Lastly, customize the hardware appropriately. You’ll want to refer to the above Systems Requirements.

Deploying Windows Server 2019

Now we are in the deployment phase of the operating system. If you haven’t logged out of VMware vCenter or ESXi start the virtual machine by click on the sideways green triangle.

Next, select either the Launch Web Console or Launch Remote Console. Preferably in this case you’ll want to use the Remote Console to add the ISO unless your PXE booting.
* If you select the Launch Remote Console option you can download this VMRC file to get started – Here

When you have the remote console open. Click on VMRC, Removable Devices, CD/DVD, and then browse to your ISO

After the ISO loads… select your settings. Mine are shown below in the image.

Click on Install Now

Select your version that you’d like to install. Mine is a little different since its a custom ISO for Vultr.

Accept the terms and conditions for the installation.

For this lab, select the Custom: Install Windows only (Advanced)

Choose the disk that you’ve assigned to the virtual machine or select the only one that is available.

Allow Windows to install on the disk until completed.

After the installation completes you should be prompted to create a password for the local account. As usual, choose a good password.

Software That’s Running My Homelab

Software And Virtual Machines

Geographically… We’ll be starting with my “Annville” location. A nice thing to note for a later upcoming blog is that the Annville and York sites are 55 miles from each other which is technically okay for a DR (Disaster Recovery) especially with it being in a mountainous area.

Annville:

Plex
This is a Ubuntu 18.04 LTS virtual machine with Plex running as a dedicated service. I’ve added some other functions to this virtual machine to help in my automation task to create less repetitive work which is keeping the service up-to-date. I’ve also setup the server to connect via fstab to the YKGE server since that serves some folders connected to my Google GSuite account. To keep things a little more secure… all the data goes through the IPSec tunnel. It keeps the tunnels up so its worth it. I don’t permit external users on my server.
BlueIris
This is a local security system for my secondary remote server cabinet. I maintain cameras internally and externally for the house. All of the cameras used are Dahua rebrands of Amcrest. I’ve linked Blue Iris if you want to learn more about BlueIris

Seedbox
I use this machine to host publicly available open-source software to hopefully put a small dent on the map for the non-profits that host them.
Veeam
I use this to backup… basically all of the virtual machines shown below. I’ll go into further detail in another blog post. I don’t backup virtual machines like VCSA, WordPress (Dev box), etc. For this application, I do use and renew every year under the NFR licensing that I am grateful for.


YKDC1
This virtual machine used to be on the 192.168.4.12 server but with how VMware shares resources I decided for best practice to move this virtual machine to the Annville location. This server hosts DC, DHCP, DNS, AD CS, IIS, and NPAS
YKGE
This only runs stablebit for GSuite and print services across my IPSec tunnels.

York

Host: 192.168.4.12 (R710)
This physical server has been turned off at the time of writing to reduce consumption of power at my home.

Host:192.168.4.13 (R720)
DMS(SeedDMS)
A light-weight server that runs on a Ubuntu OS to host all scanned documents; I have decommissioned this for now as I evaluate others
Bookstack
I use this often to make up my own KB articles, a recipe section for my family, and many other articles
Cacti
This is used as an SNMP poller for all of my networking equipment… Primarily a mix of Ubiquiti and Cisco


Mayan EDMS
Currently this is my document management system that runs through a turnkey system
OpenVPN
This is used to connect externally through a handheld device or laptop back into my environment. I only allow traffic to a certain subnet for security reasons
UNMS
This is a application provided by Ubiquiti to allow the management of its Edge product line. I do use this for my own purposes and to also manage a few external bridges that I’ve placed


WordPress
I do not host this in a DMZ or externally. The WordPress VM is used for development reasons.
VCSA
VCSA is basically in short VMware vCenter which I use to communicate across all 3 of my physical hosts
BlueIris
Like before in Annville this system is used to record around the building both internally and externally
RDS
This is a terminal server that I use when I’m out and about. No outbound ports of course


SQL
Since SQL is popular among Windows environments for ERP’s specifically… I’ve decided to run a Dev SQL environment to manage, maintain, and learn from.
WSUS
I use this to maintain Windows updates for all computers/servers while maintaining updates through scripts.
YKDC2
The YKDC2 virtual server is a replica to YKDC1. It maintains default replication times.
YKFS01
This is only a file server and serves both an S:\ (shared data) and H:\ (private data).
YKGE19
Again this is another general server that hosts a lot of common items I don’t want on critical pieces like a file server, domain controller, or anything like that. Basically, to keep the risk and confusion away.