How I can upgrade PowerShell on Windows Server 2008 R2?

I am using Windows PowerShell 1.0 in Windows Server 2008 R2. I have tried PowerShell 3.0 in Windows 8 and it looks good to me.

Now the question is: How I can upgrade PowerShell on the Windows Server 2008 R2 machine? If 3.0 is not available for me, then is there any way to upgrade to the latest available version?


Name             : ConsoleHost
Version          : 2.0
InstanceId       : f0b6480c-be55-429d-a197-65604de5887e
UI               : System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture   : en-US
CurrentUICulture : en-US
PrivateData      : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
IsRunspacePushed : False
Runspace         : System.Management.Automation.Runspaces.LocalRunspace

That's impossible. Windows PowerShell 2.0 is included in Windows Server 2008 R2. You cannot install Windows PowerShell 1.0 in 2008 R2 in any supported fashion.

To verify the version of PowerShell you're running, simply echo the $host variable.

Name             : Windows PowerShell ISE Host
Version          : 3.0
InstanceId       : 711f19be-3f19-4612-bea3-61899c1a73c2
UI               : System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture   : en-US
CurrentUICulture : en-US
PrivateData      : Microsoft.PowerShell.Host.ISE.ISEOptions
IsRunspacePushed : False
Runspace         : System.Management.Automation.Runspaces.LocalRunspace

PowerShell 2.0 is included with Server 2008 R2. PowerShell 3.0 is included with Windows 8 and Server 2012. PowerShell 3.0 can be installed on Server 2008 R2.

The following instructions are excerpted from this page: http://technet.microsoft.com/en-us/library/hh847837.aspx

  1. Before installing Windows Management Framework 3.0, uninstall any previous versions of Windows Management Framework 3.0.

  2. Install the full installation of Microsoft .NET Framework 4.0 (dotNetFx40_Full_setup.exe) from the Microsoft Download Center at https://go.microsoft.com/fwlink/?LinkID=212547.

  3. Or, install Microsoft .NET Framework 4.5 (dotNetFx45_Full_setup.exe) from the Microsoft Download Center at https://go.microsoft.com/fwlink/?LinkID=242919.

  4. Install Windows Management Framework 3.0 from the Microsoft Download Center at https://www.microsoft.com/en-us/download/details.aspx?id=34595.

The page also describes how to install PowerShell 3.0 on Server 2008 (non-R2) and Windows 7.


PowerShell 4.0 is the final version available for Windows Server 2008 R2.

The pre-requisites are:

  • Windows 2008 R2 Service Pack 1

  • .NET 4.5

It is installed as part of Windows Management Framework 4.0.


First, the correct method of checking your PowerShell version is to check the variable $PSVersionTable.PSVersion and not use $Host or Get-Host.

Second, you should do some research about what version of PowerShell you should install on your server instead of just updating it to the latest version available. A great post by The Scripting Guy Should I Upgrade to Latest Windows PowerShell Version? can help you make this decision. For example, the post points out that upgrading PowerShell can break important applications:

Will upgrading Windows PowerShell break any of my applications? Unfortunately the answer is that it might. The Release Notes for Windows PowerShell 4.0 supply the following list of applications with which Windows PowerShell 4.0 is incompatible:

  • System Center 2012 Configuration Manager (not including SP1)
  • System Center Virtual Machine Manager 2008 R2 (including SP1)
  • Microsoft Exchange Server 2013, Microsoft Exchange Server 2010, and Microsoft Exchange Server 2007
  • Microsoft SharePoint 2013 and Microsoft SharePoint 2010
  • Windows Small Business Server 2011 Standard

If your machine is running any of these products, do not install Windows PowerShell 4.0. Windows PowerShell 3.0 has a very similar list. Some of these applications (such as Exchange Server 2013) are made compatible with a service pack. You will need to determine if a service pack or another fix is available for your particular application and situation.

Further, new versions of PowerShell and can also break your existing scripts.