Five tips for learning how to use Server Core

Deploying and managing Server Core can be tricky. These pointers will help you overcome some common configuration and management challenges.

As organizations work to increase the density of the virtual servers running on their host servers, many are turning to Server Core deployments. Server Core lacks a lot of the GUI features found in more traditional Windows Server deployments. It's a lightweight server operating system, which makes it ideal for use in virtual data centers. Even so, there's no denying that Server Core can be a bit intimidating and that a learning curve is associated with managing Server Core operating systems. In this article, I will provide five tips for learning how to use Server Core.

1: Set up a lab machine

Without a doubt, the best advice I can give you is to set up a few lab machines and install Server Core. That way, you can experiment with configuring and managing the operating system without having to worry about harming your production systems. As you do, don't be afraid to get your hands dirty. The deeper you dig into Server Core on your lab machines, the better equipped you will be to manage Server Core deployments in the real world.

2: Understand the difference between the command line and PowerShell

I have read several blog posts that have incorrectly reported that administrators must use PowerShell cmdlets to manage Server Core operating systems. Although Server Core is managed from the command line, there is a difference between the command line and PowerShell.

The command line traces its roots back to DOS and has existed in one form or another in every version of Windows ever released for the X86 / X64 platform. Although some command -ine commands will work in PowerShell, PowerShell commands will not work in a command-line environment.

The command line is the primary interface for managing Server Core. In fact, PowerShell isn't even natively supported on Windows Server 2008 Server Core servers (although there is an unofficial workaround that can be used to add PowerShell support). PowerShell is natively available on Server Core servers that are running Windows Server 2008 R2, but it's not installed by default. Microsoft Support provides instructions for enabling PowerShell.

3: Check out the available graphical utilities

Even though the whole point of Server Core is that it's supposed to be a lightweight server OS without a GUI, it actually does have a GUI. Several graphical utilities can help you with the initial server configuration process.

The best of these utilities (in my opinion) is Core Configurator 2.0, an open source utility that's available as a free download. It's designed to help you to do things such as naming your server, configuring its network settings, and licensing the server.

In addition, Microsoft includes a configuration utility called Sconfig with Windows Server 2008 R2. Simply enter SCONFIG.CMD at the command prompt, and Windows will launch the Server Configuration utility. This utility is similar to the Core Configurator, but its options aren't quite as extensive. The Server Configuration utility will help you to do things like joining a domain or installing updates.

4: Don't forget about graphical management tools

When you manage a normal Windows 2008 server, you use built-in management utilities, such as the Active Directory Users And Computers Console and the Service Control Manager. Although such utilities connect to the local server by default, they're designed to let you manage other servers on your network, including servers that are running Server Core.

Even though Server Core operating systems don't come with a comprehensive suite of management utilities, there is absolutely nothing stopping you from connecting to a core server from another server's management consoles and managing that core server in exactly the same way that you would if it were running a graphical Windows Server operating system.

5: Learn Server Core's limitations

Because Server Core is a lightweight server operating system, it's not suitable for all purposes. Plenty of third-party applications simply will not run on a Server Core deployment.

In addition, many of the roles and role services that are often run on traditional Windows Server 2008 R2 servers are not supported on Server Core deployments. The actual roles that are supported by Server Core vary depending on the edition of Windows you are installing. For instance, Windows Server 2008 R2 Web Edition supports only three roles, while the Datacenter and Enterprise Editions support 11 roles:

  • Active Directory Certificate Services
  • Active Directory Domain Services
  • Active Directory Lightweight Directory Service
  • BranchCache Hosted Cache
  • DHCP Server
  • DNS Server
  • File Services
  • Hyper-V
  • Media Services (this role must be downloaded separately)
  • Print Services
  • Web Services (IIS)

Microsoft provides a full list of the roles that are supported by the various editions of Windows Server 2008 R2.