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:
- Using DISM Command Line
- Using Server Manager PowerShell Cmdlets
- Switching Server Installation Options (This article)
- Minimizing Server Footprint
A quick review of these capabilities in Windows Server 2012 is included in https://aka.ms/7ways.
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.
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