PowerShell, Longhorn and Server Core

As I mentioned yesterday, PowerShell is now integrated into Longhorn server – and you can read more about it here, http://www.microsoft.com/windowsserver/longhorn/powershell.mspx. Unfortunately, PowerShell won’t be available for Server Core installations, which is where it would make most sense being used. For those that don’t know, Server Core is Microsoft’s first attempt to create a server which can be installed without a GUI.

As most first attempts go, Microsoft haven’t quite got it right yet… Although you’ll read about how Server Core doesn’t have a GUI, this isn’t really accurate – it does have a GUI, but what it doesn’t have is a “shell”. Server Core is an option when installing Longhorn Server, and when you first boot up a Server Core system you are presented with a standard Ctrl+Alt+Del logon boxes. After logging in, you’re then presented with two command prompt windows and nothing else. Why two command prompt windows, you ask? Well – what happens if you close your only command prompt window? This obviously wouldn’t be a problem if it was a true GUI-less system, but as you explore Server Core, you’ll find that lots of GUI applications run just fine. For example, if you do close both your command prompt windows, you can just open up task manager and run a new process.

So the reason I’m explaining how Server Core works is so that you understand that it hasn’t been designed from the ground up as a true GUI-less server. But it’s more just a hacked version of Windows that has had as many GUI components pulled out as possible. One of the casualties of this hacking is that the Dot Net Framework doesn’t run on Server Core, and because PowerShell is dependent on .Net, this is the reason that PowerShell can’t run on Server Core. So in summary… Microsoft’s new command line scripting language, doesn’t run on Microsoft’s first server product that only supports the command line. I’m sure that future versions of Server Core will fix this, but this is the situation now.

But Irony aside, PowerShell will be an important scripting language to learn, and even though it can’t run on Server Core, you can still run it on a supported system to manage a Server Core server. (The same goes for any other management console that can connect to a remote server.) So if you’ve been putting off learning about PowerShell, then now is a good time to get stuck in. Here’s a collection of good links to get you started…

Microsoft links:

3rd Party Sites:

Leave a Reply

Your email address will not be published. Required fields are marked *