Server 2003 to 2008 Upgrade: Fix PowerShell compatibility error

Easy fix for PowerShell compatibility error on 2003 to 2008 Server upgrade.

Problem
PowerShellUpgrading my 2003 R2 Physical and Virtual Machines to 2008 Server was prevented by PowerShell compatibility issues stating that the upgrade could not continue until the old version of PowerShell (V1.0) was uninstalled.

Easier said than done – researching the problem revealed that removal of earlier versions of PowerShell was not possible if Service Packs had been applied and recommended removing various updates from Server 2003 via Control Panel. I could find none of these PowerShell updates on any of my machines and was beginning to get just a tad concerned, not to mention slightly miffed… The Microsoft forums were not particularly helpful either.

After the best part of 10 hours I came across a simple technique that has worked for me with no further issues presented:

Solution
Rename the existing PowerShell folder located at:

Server 2003 32 bit: %windir%\System32\WindowsPowerShell
Server 2003 64 bit: %windir%\Syswow64\WindowsPowerShell

to something else (I used XXXWindowsPowerShell) and rerun your 2003 Server – 2008 Server upgrade… Upgrades the OS and installs current PowerShell.

Addendum
Over 2 years & ~120 Server 2003 to Server 2008 upgrades (and now many 2008 to 2012 upgrades) – no problems caused by this technique for updating PowerShell – and I use PS scripts extensively.

Huzzah Microsoft – much as I love my Windows Servers, surely you guys could have made this process easier..?

77 Comments
  1. what the … ? This solution is so simple, nobody except you is suggesting this. Thank you so much!
    After having struggled with “oobmig” and other KB-based solutions for 3 hours now, to get rid of Powershell on a windows 2003R2 with SP2 installed – the upgrade is now running.

  2. Ha! I tried all other suggestions and could not get trough the empty compatibility report screen. tried your suggestion and now i could click next and continue Installation.

    Thank you!

  3. Thank you! I was searching for hours before I found this! Such a simple trick I can’t believe this information isn’t easier to find. I’m sure you saved me hours of hair pulling.

  4. Thank you. This worked perfectly.

    A Powershell entry didn’t exist in my Add/Remove Programs and the uninstall folders didn’t exist.

  5. Thanks to you so much I did my update in 30 minutes while I was working with “MS” solution since 4 hours

  6. I’ll echo the very first comment: all this crap floating around about how to fix this, and you’re the only person with a working solution. This saved my butt in a pinch — it was the only way to get an old 2003 box onto a supported platform for the vendor.

    Kudos, kudos and kudos!!

  7. Thank you sir for posting this – it works perfectly! MS Forums were useless, I was ready to just scrap the box and load 2008 from scratch, and then I found this. My Google-foo was lucky today! Well done!

  8. Absolutely brilliant!
    Thank you!
    You saved me from having to flatten a 2003 installation with a 60Gb SQL medical database.
    Now we are compliant with the new software and sunset limitations of the legacy server system!

    • I’m in a similar situation where we have a Microsoft FRX installation on one of our last 2003 R2 servers. The application’s future is uncertain, but the 2003 R2 server has to go before end of support.

      With this upgrade, we should be compliant. Then I can start harassing Accounting to migrate to something different.

  9. I will give you credit and also make you the new CEO of Microsoft.
    Thank you for your diligent work searching for a fix. It is greatly appreciated.
    Sincerely, Bob

  10. Thank you so much, real your solution is so simple i was struggling to fix this problem for 2 hours at last i saw this. God bless you

  11. Thank you. Man if I could buy you a beer I would.

    I spent hours trying to make the Microsoft official method work and was getting nowhere.

  12. Thank you very much, I’ve been struggling with this for almost an afternoon, such a simple solution compared to Microsoft’s.. finally installing.

  13. As others have said – ‘Absolutely brilliant’

    I too searched and searched and tried many suggestions but this was the only one that actually worked.

    I will post – a post upgrade results as well after some months have passed as to whether it is stable or with issues.

    Thank you

  14. You are a ledged!! My developer was absolutely dreading recreating the environment that existing on the 2003 server as it was years in the making with tons of manual config and work-around.

    Worked like a charm! Thanks for sharing!

  15. Thank yiou! Highest props to you. I was having a huge nightmare and now I am able to proceed thank you to your awesome help!!! Thank you very much.

  16. You sir are a genius. I tried all the Microsoft useless suggestions wasting several hours and then stumbled upon your solution. Installation is well under way now. Simply put… Thank you!

  17. Awesome and simple solution. After searching for hours, I came across your solution. Wish Microsoft can put this solution on their site so it can be found by everyone struggling to upgrade.

  18. FFS, I wish I had found this 2 days ago

    I couldn’t uninstall powershell as the uninstaller wasn’t present and couldn’t uninstall the service pack.

    I found a tip that suggested copying the uninstaller from another 2003 server but none of my remaining 2003 have the uninstaller.

    I then started to build a fresh 2003 server just so I could capture the uninstaller however I’m having trouble finding the right KB as the ones listed on the MS sites are not showing as being installed even though Powershell is present.

    So here I am searching around for the KB for the Powershell uninstaller and I find this.

    Thanks for the tip, this is going to save me.

  19. Using tips in this thread as well as other research here are all of the steps I used to successfully upgrade Win2003 (32bit) VM to Win2008 (R1 32bit) VM. This was used on vSphere 5.5.

    In-Place Upgrade Windows 2003 (32bit) to 2008 R1 (32bit) Notes

    1. VMware: Clone Windows 2003 candidate server to a new VM
    2. VMware: Disconnect network adapter
    3. VMware: Increase C: disk volume by at least 20GB (must have 20GB free space)
    4. VMware: Power on cloned machine
    5. Win2003: Logon local Administrator account (no network available)
    6. Win2003: Uninstall all unnecessary applications before beginning
    a. Uninstall Backup Client Agent
    b. Uninstall AntiVirus Client
    c. Uninstall Management Agent
    d. Uninstall VNC
    e. etc.
    7. Win2003: Restart
    8. Win2003: C: Disk Properties > run Disk Cleanup
    9. VMware: Optional snapshot server for baseline safety copy to resume here.
    10. Win2003: Extend C: (Parted Magic ISO, or whatever method you like) to include new 20GB free space
    11. Win2003: Restart (CHKDSK may automatically run)
    12. Win2003: Validate functional OS (look at event logs)
    13. Win2003: Uninstall VMware Tools
    a. Uninstall VMware Tools
    b. Uncheck VMware: Edit Settings > Options > VMware Tools > Advanced > upgrade Tools during power cycling
    c. Restart
    14. Win2003: Cancel PnP device manager driver Wizard
    15. Win2003: Manage Computer > Device Manager > Base System Device > Uninstall
    16. Rename PowerShell folder located at: %windir%\System32\WindowsPowerShell to 2003WindowsPowerShell
    17. Win2003: Shutdown
    18. VMware: Optional snapshot server for baseline safety copy to resume here.
    19. VMware: Edit Settings > Options > Guest OS: change from Windows 2003 (32bit) to Windows 2008 (32bit)
    20. VMware: Power on
    21. Win2003: Cancel PnP device manager driver Wizard
    22. VMware: Connect CD/DVD to Win2008 ISO
    a. Note bug in vSphere client, you may have to close all vSphere client application sessions and/or restart your PC to connect to CD/DVD ISOs if you have had several connections during this session already
    23. Win2003: Autorun.exe from Win2008 x86 ISO install DVD
    24. Win2008 Setup: Select > Do not get the latest updates
    25. Win2008 Setup: Standard x86 > Next
    26. Win2008 Setup: Accept License Terms > Next
    27. Win2008 Setup: Which type of installation do you want? > Upgrade
    28. Win2008 Setup: Compatibility Report > Next
    29. Win2008 Setup: Upgrading Windows ? Gathering files ?
    a. Elapsed time approximately 20 minutes
    30. Win2008 Setup: Automatic restart
    a. Expanding files ?
    b. Installing features and updates ?
    c. Completing upgrade ?
    d. Elapsed time approximately 10 minutes
    31. Win2008: Automatic restart
    a. Boot Manager Menus
    i. Earlier Version of Windows
    ii. Microsoft Windows Recovery Console
    iii. Tools: Windows Memory Diagnostic
    iv. Windows Server 2008 (automatic selection 30 second timeout)
    b. Please wait while windows sets up your computer ?
    c. Elapsed time approximately 5 minutes
    32. Win2008 Setup: Automatic restart
    a. Completing upgrade ?
    b. Elapsed time approximately 10 minutes
    33. Win2008 Setup: Automatic restart
    a. Please wait while Windows continues setting up your computer ?
    b. Elapsed time approximately 5 minutes
    34. Win2008 Setup: Automatic restart
    35. Win2008: Logon as Administrator
    a. PnP pop-up Found New Hardware > Ask me again later
    b. VMware: VM > Guest > Install/Upgrade VMware Tools
    36. Put new system into production
    a. Choose this fork if the upgraded machine will simply replace the original
    i. Win2003: Shutdown original machine that you copied
    ii. VMware: Enable network adapter
    iii. Win2008: Confirm network properties (IP address, DNS, etc.)
    b. Choose this fork if the upgraded machine will be an entirely new machine on the network
    i. Win2008: Rename cloned computer (had you planned in advance, the VMware cloning Wizard will change the SID, name the machine to a new name, set network settings, etc. for you at the time you create the machine copy)
    ii. Win2008: Change SID using Sysprep (will restart x2)
    iii. Win2008: Rename computer
    iv. VMware: Enable network adapter
    v. Win2008: Set network properties (IP address, DNS, etc.)
    vi. Win2008: Add to domain
    vii. Win2008: Restart
    37. Move computer to correct OU in AD, wait for AD replication
    38. Win2008: CMD > GPUPDATE /FORCE
    39. Win2008: Run Windows Updates (multiple restarts)
    40. Win2008: Install required software
    a. AntiVirus Client
    b. Management Agent
    c. Backup Agent
    d. etc.
    41. Win2008: Thoroughly test all applications on upgraded server
    42. VMware: Snapshot manager (delete optional safety snapshots you made earlier)

    Thanks to these threads for additional information:
    https://communities.vmware.com/message/2504640
    http://williamfaulkner.co.uk/2013/02/server-2003-to-server-2008-upgrade-powershell-compatibility-error/
    http://social.technet.microsoft.com/Forums/en-US/winserverMigration/threads
    https://technet.microsoft.com/en-us/library/cc755199(v=ws.10).aspx

  20. What I can’t understand is why they’d go to the effort of making the error code, webpage, code the detection in the installer, etc. Which would all be a lot of effort, instead of just having the installer pop up and say “do you want to uninstall PowerShell. It’s not supported in the upgrade”…?

  21. Absolute brilliance – this saved me from a complete rebuild and made my life much easier today. I have struggled with this for several hours – THANK YOU

  22. UNBELIEVABLE!! Thank you so much for this. You have saved my server from going out a 2nd floor window.

  23. I had no ability to uninstall SP2 as the image of 2003 server had it integrated. OOBMIG.exe was useless as there was no KB connected to powershell on my system.

    Then you came to save my sanity! Thank you very much sir.

  24. Thank you, this saved me aswell. Interestingly the microsoft method worked on our test systems…. then I go to do our production systems during a change window based on what we learned in test… and no cigar. None of the updates showed up to uninstall. Thanks to your article, we got past that hurdle!

  25. 2.5 hours of following Microsoft’s instructions and this is what works?!?!?!

    Can’t thank you enough.

  26. William Faulkner,

    May your children’s childrens’ children plant a plaque upon the surface of a new Earth colony to boldly declare:

    “Just rename the bloody thing.”
    – William Faulkner, the year of our Lord, September 2nd, 2013

    Thank you, most sincerely.

  27. holy crap, thanks microsoft for making me try the oobmig.exe tool that didn’t do crap. this was done is 5 min, thanks

  28. Simple and Elegant. I rarely comment but your solution made my day. ( And saved me from hours of Microsoft nonsense)

    thanks

  29. So funny all commenters traveled the same path… hours of hotfix nonsense that didn’t work… and then this super simple solution. Beer and burger on me when in South Florida. Many thanks.

    • Rather partial to the occasional burger & beer – thanks for the offer πŸ™‚ For an old post this is still getting a lot of hits, so staying up for the foreseeable. Cheers…

  30. Man I tried everything for weeks working on this issue after we lost the priviously upgraded one. This has been a huge life saver! I was so happy it worked.. .but so mad because it was such a simple solution and I could have been done weeks ago! But none the less I am so happy I found your page, much appriciated! THANK YOU THANK YOU THANK THANK YOU!!!

  31. Thanks! This helped me since the KB wouldn’t work, it’s 2017 and this is still useful πŸ™‚

  32. Yay! Haven’t done these upgrades in a few years and had forgotten this issue… thanks for your blog post, again it proved to the helpful.

Leave a Reply

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

This site uses Akismet to reduce spam. Learn how your comment data is processed.