Windows 2008 introduced us to code mode. It was great, an ultra thin server OS, with little overhead as there’s no UI. It was as awesome improvement to Windows, unless you actually wanted to use any other Microsoft technologies. There’s no .NET support so you couldn’t run .NET services, or ASP.NET websites. You couldn’t install SQL Server, or Exchange. If you wanted classic ASP, or PHP then you were set. Pretty must the only real use for these was as as domain controllers and other infrastructure users.
Windows 2008 R2 core mode is actually useful.
Some of the things which are now supported which weren’t before include .NET Framework 2, 3 and 3.5 (both normal .NET services and ASP.NET), Powershell, Certificate Services and WoW64 (Windows on Windows). All these features require that you install them as Windows 2008 R2 like Windows 2008 is a very thin OS. This will allow you to use core mode to run your web servers which then gives you a very thin, and much more secure web server to face the Internet. As there is much less software installed on the server there is much less possible attack vectors on the server.
If you’ve ever tried to configure a core mode server, then this next part is for you. If you haven’t ever tried to configure a core mode server, grab the nearest pen, glue a sharp tack to it, and stab yourself in the eye (please don’t, you get the idea though). That’s about the same level of pain we are talking about when you try and configure a core mode server. Just changing the name of the server, putting it on the domain, and changing the IP of the server will make your fingers numb from typing. But no-more. Windows 2008 R2 Core mode includes a command line UI to help you configure the server. From a command line on the server (like you have any other tools besides notepad available) run the sconfig application. This will launch the app within the shell window. It looks a lot like a old MS DOS app. If you don’t remember MS DOS it’ll be a little blue app with white letters, and you should remember that this is what most apps looked like so no more complaining about 256 color mode. The sconfig will allow you to configure the IP address, server name, domain, etc. If you want to script all this you can do so via powershell. If you hate yourself the net sh command is still available.