Windows Server 2012 R2 Installation Options and Features on Demand (Part 4 of 5)

This 5-part blog post series details the concepts, processes, and operations of Windows Server 2012 R2 installations options and the underlying technology, Features on Demand, as the following:

  1. Introduction
  2. Using DISM Command Line
  3. Using Server Manager PowerShell Cmdlets  
  4. Switching Server Installation Options (This article)
  5. Minimizing Server Footprint

A quick review of these capabilities in Windows Server 2012 is included in

Windows Server 2012 R2 Installation Options

In Part 1, I talked about at server installation time, there are two installation options: Server Core and Server with a GUI, available. And the third installation option, Minimal Server Interface, is configurable after an installation is completed. Minimal Server Interface is basically a Server Core installation with Server Manager and MMC. And as needed, an administrator can switch among the three installation options with Features on Demand as detailed  in Part 1.

Key Components

The operations to switch installation options are on mainly two components: Graphic Management Tools and Infrastructure and Server Graphical Shell. The following shows where the two components are listed in Server Manager “Add roles and features” wizard and an output of PowerShell Get-WindowsFeature cmdlet, respectively.


Notice in Server Manager wizard, what we see are display names. When Server Manager is available, i.e. either in a Server with a GUI or Minimal Server Interface, we can simply use checkboxes of the two components to change installation options.


The output of Get-WindowsFeature as shown above on the other hand returns a table of Display Name,  (Class or Object) Name, and Install State listing out all the roles and features with their states. And the highlighted items are the corresponding part to what is shown in Server Manager wizard.

The following depicts the two components involving server installation options. The two components are with (class or object) names: Server-Gui-Mgmt-Infra and Server-Gui-Shell


Switching a Server Installation

In production, Server Core may be employed as a deployment standard. Which does not provide the server graphical UI like Server Manager or MMC at all. There are times it is more productive or as a preference to operate with the server graphical UI. In such case, an administrator can enable or disable the server graphical UI, namely switch the installation options by enabling or disabling the above mentioned components.

The process of switching from one installation option to another is very straightforward. There are four facts to remember:

  • Server-Gui-Shell requires Server-Gui-Mgmt-Infra. Under the hood, these two components are installed together. However Server-Gui-Mgmt-Infra can be enabled without enabling Server-Gui-Shell, not vice versa.
  • Enabling only Server-Gui-Mgmt-Infra does not enable Server-Gui-Shell, which resolves in Minimal Server Interface, i.e. Server Core with MMC, Server Manager, but not full graphical shell.
  • Enabling Server-Gui-Shell automatically enables Server-Gui-Mgmt-Infra, the two together resolve in Server with a GUI, i.e. full graphical UI.
  • Disabling only Server-Gui-Mgmt-Infra also implicitly and automatically disables Server-Gui-Shell, which resolves in Server Core user experience.


Using Server Manager PowerShell cmdlets as detailed in Part 3 below is the most straightforward way to switch a server installation option. Here are four sample statements to all possible scenarios.

  • Switching to full server GUI regardless

    Install-WindowsFeature Server-Gui-Shell -Restart

  • From Server Core to Minimal Server Interface (i.e. Server Core with Server Manager and MMC)

    Install-WindowsFeature Server-Gui-Mgmt-Infra -Restart

  • From Minimal Server Interface or full GUI to Server Core

    Uninstall-WindowsFeature Server-Gui-Mgmt-Infra -Restart

  • From full GUI to Minimal Server Interface

    Uninstall-WindowsFeature Server-Gui-Shell –Restart

Notice that the above statements can include the parameter, –Source, to specify installation sources if the workload of an operated feature has been previously removed as shown below. By default, if an installation source is needed and not found or not specified, it will try to download the source from Windows Updates.

  • Switching to full server GUI and installing the bits from the installation source on D: drive

    Install-WindowsFeature Server-Gui-Shell –Source d:\source\sxs

Or use the parameter, –Remove, as in the following sample to in addition to disabling the feature remove the associated workload from the side-by-side store as well.

  • Switching to Server Core and completely remove the server graphical component from the installation

    Uninstall-WindowsFeature Server-Gui-Shell –Remove -Restart

Part [1, 2, 3, 5]