Enabling and disabling the graphical interface in Hyper-V Server Core

Server Core has many installation benefits, but there are a few situations where the GUI is better and provides more options; for example, when we need to troubleshoot a problem on the server. Even with the handy tools from the previous task, nothing replaces the full server installation.

Since Windows Server 2012 it is allow to install and uninstall the GUI, making our job easier when the GUI is necessary and providing all the benefits of a Server Core installation when you need it. It also allows a third option that enables the graphical management tools.

The three options available since Windows Server 2012 are as follows:

  • Server Core: This option provides default installation with command line interface only
  • Minimal Server Interface: This option comes with the Server Manager, Microsoft Management Console (MMC) and some Control Panel options
  • Server Graphical Shell: This option allows for a full graphical interface server

NOTE: By installing Windows Server 2012 (or R2) with Server Core, you can save up to 3 GB of disk space, when the necessary components for the graphical interface are not present.

How to do it

The following steps will show you how to install the minimal server interface from a Server Core installation and how to enable the full graphical interface.

1. From the Server Core command line, type PowerShell to load PowerShell.

To identify the index number that need to be used in order to enable the graphical interface, type the following command line, where D: is the path for the Windows Server installation DVD drive.

Get-WindowsImage –ImagePath D:SourcesInstall.wim

2. A list with the index number will be displayed, as shown in the following screenshot. Make a note of the number of the type of Windows Installation you want to enable in the next step. In this example the index number 2 will be used.


3. Create a new temporary folder to mount the WIM file with the following command:

New-Item C:Sources –Type Directory

4. To mount the image file in the directory created in the previous step, type the following command by specifying the index number obtained in step 3.

Mount-WindowsImage –ImagePath D:SourcesInstall.wim –path C:Sources –Index 2 -ReadyOnly

5. With the mounted image, type the following command to enable the Server Graphical Management Tool and the Infrastructure option.

Install-WindowsFeature Server-Gui-Mgmt-Infra –Source C:SourcesWindowsWinsxs

6. Restart the server and wait for the feature to be configured. It will take a couple of minutes.

7. To enable the full graphical interface, open Server Manager by typing servermanager.exe.

8. In the Server manager dashboard, click on Add roles and features.

9. In the Add Roles and Features Wizard, click on Next four times.

10. In Features, expand User Interfaces and Infrastructure, select the option Server Graphical Shell as shown in the following screenshot, and click on Next:


11. To complete the installation, in the Confirm installation selections page, click on Install.

NOTE: You can also install the full graphical interface with the following PowerShell command:

Install-WindowsFeature Server-Gui-Shell

12. After the setup, you need to restart the server. You can check the Restart each destination server automatically if required option to automatically restart the server.

13. Having enabled the GUI, we can now see how to uninstall the GUI from the full server installation. In the Server Manager window, click on Manage and then Remove Roles and Features.

14. In the Before You Begin screen, click on Next four times.

15. Then, in Features, clear the check box for the Server Graphical Shell option and click on Next.

16. Confirm the uninstallation by clicking on Remove and wait for the server to be restarted.

Managing a Hyper-V Server Core installation using sconfig

With all the benefits that Server Core bring such as performance, security and so on. But without the GUI, it’s not easy to do the daily management and maintenance of Hyper-V. If you want to change the computer name or the IP address, the GUI is always the easiest to use. But on the other hand, the command line can bring a fast and an automated process.

That’s why since Windows Server 2012, the Server Core version of Windows and Microsoft Hyper-V Server 2012 comes with the Server Configuration (sconfig). This is a command line with a simple interface to reduce the time for doing the most common tasks in Windows.

In the following screenshot, you can see an example of sconfig’s first page:


sconfig can do this via an intuitive numerical menu to facilitate the Windows configuration.

A simple example is when you have to change the IP address of your computer by using the command line. Have a look into the following command:

netsh interface ip set address “Local Area Connection” static 1

Sometimes it is hard to remember the exact command syntax and this can lead to server misconfiguration.

Using sconfig, the process would be simply to press the numbers 8, 0, and then 1 from the menu and simply specify the new IP configuration. That’s it.


Besides IP configuration, the sconfig offers 13 other options:

1. Domain/workgroup

2. Computer name

3. Adding local administrator

4. Configuring remote management

5. Windows update settings

6. Downloading and installing updates

7. Remote desktop

8. Network settings

9. Date and time

10. Help in improving the product with CEIP

11. Logging off the user

12. Restarting the server

13. Shutting down server

Here are some examples how to set up the most common configurations in your server core without advanced command lines.

To change Domain/Workgroup

1. Press 1

2. Than press D for Domain or W for Workgroup

3. Specify the domain or workgroup name, the necessary username and the password and press Enter

To change the computer name

1. Press 2 and specify the new computer name.

2. Select Yes to restart the computer.

To add a local administrator

1. Press 3.

2. Enter the account to join the local administrators group and type the user password.

To configure the remote management

1. Press 4.

2. Select one of the following options:

  • Allow MMC Remote Management
  • Enable Windows PowerShell
  • Allow Server Manager Remote Management
  • Show Windows Firewall settings
To change Windows update settings

1. Press 5.

2. Select A for automatic or M for manual.

To download and install updates

1. Press 6.

2. Select A for all updates or R for recommended updates only.

To enable remote desktop

1. Press 7.

2. Select E to enable or D to disable.

To configure network settings

1. Press 8.

2. Select the network adapter number you want to configure and then select one of the existing options:

  • Set network adapter IP address
  • Set DNS Servers
  • Clear DNS Server Settings
To change the date and time

1. Press 9 and a graphical interface will show up with the date and time settings to be configured.

To restart and shut down the server:
  • Press 1+0 to join Customer Experience Improvement Program
  • Press 1+1 for logoff
  • Press 1+2 to restart the computer
  • Press 1+3 to shut down the server
  • Press 1+4 to exit to command line

After these configurations using sconfig and with reduced command line interaction, your server will be ready for the production environment.

How it works

Server Configuration basically runs scripts in the background for every option that has been selected through a numeric menu, making your life much easier. For every number you select, sconfig can run another script to show a submenu or just run the final script to apply the changes you have selected.