Easy fix for PowerShell compatibility error on 2003 to 2008 Server upgrade.
Problem
Upgrading 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..?
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.
Wish I could take the credit, but came across the suggestion on a forum somewhere after many frantic frustrating hours… You’ll be pleased to know no issues months on..!
Same thing, ~3hrs of oobmig, et al. Thanks for the KISS method!
Same here! I fought it for a good two hours until I found your post. Thank you!
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!
Gracias, tu soluci?n evit? que borre esa carpeta y la instalaci?n continuo.
Thanks for the lead you saved me lots of time!!!!!!
Thanks that worked perfectly, very simple easy and saved me lots of time.
Thanks you
thanks so much. it’s done. success 100%.
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.
You magnificent bastard
High praise indeed, a testament to your insightful nature.!
Consider me appreciative and amused.
very, very helpfully. Thanks
Agree with James – you magnificent bastard indeed, simple solution that worked beautifully.
Glad to help, particularly as some of the companies I work for use Micro-P as their IT supplier and distributor.
Does this entitle them to a discount..?
😉
Thank you. This worked perfectly.
A Powershell entry didn’t exist in my Add/Remove Programs and the uninstall folders didn’t exist.
You saved me lots of time … very helpful
Thank you so much !!
Thanks so much! I can’t believe it was that easy. 🙂
easy. thanks.
Thanks to you so much I did my update in 30 minutes while I was working with “MS” solution since 4 hours
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!!
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!
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!
You’re welcome..! Thanks for the feedback…
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.
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
Brilliant!.
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
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.
Excellent. Struggled with this for several hrs.. This simple Fix made my day !!
Thank you very much, I’ve been struggling with this for almost an afternoon, such a simple solution compared to Microsoft’s.. finally installing.
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
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!
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.
I was not expecting that solution :-). Awesome. Thanks for your help.
you saved me a ton of time. Thank you!
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!
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.
Worked well 🙂 Thanks a lot
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.
I feel your pain – that was the position I was in and the reason I posted.
Pretty sure it’ll sort you out no problem..!
Thanks for the feedback.
Will
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
Possibly my longest comment ever – thanks, may be useful to somebody as the upgrade can be a bit of a mission..!
Dear William,
Really Appreciate your solution.
Which help us a lot.
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”…?
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
UNBELIEVABLE!! Thank you so much for this. You have saved my server from going out a 2nd floor window.
By far tha most awesome solution. Thanks for sharing.
OK! save me hours!!!
You rocks!! (Eres un maquina!!)
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.
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!
thanks dude!
2.5 hours of following Microsoft’s instructions and this is what works?!?!?!
Can’t thank you enough.
You are a saviour. Luckily I’ve only been pratting about for 30 minutes before finding your site.
Thanks!
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.
Made me larrrf – funny because it’s true..!
holy crap, thanks microsoft for making me try the oobmig.exe tool that didn’t do crap. this was done is 5 min, thanks
Simple and Elegant. I rarely comment but your solution made my day. ( And saved me from hours of Microsoft nonsense)
thanks
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…
Thanks alot, still helpful. Simple solution.
Someone need to tell Microsoft to to update their KB below.
https://support.microsoft.com/en-ca/kb/931941
I have wasted alot of hours on Microsoft solution.
Lot of googleing and could not find oobmig.exe anywhere on the planet earth
YUP!! saved me a ton of time as well!!
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!!!
This just saved me so much time, thanks.
That was it – %windir%\Syswow64\WindowsPowerShell
Thanks! This helped me since the KB wouldn’t work, it’s 2017 and this is still useful 🙂
Thanks for the feedback – you would not believe how many hits this post still gets..!
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.
Thank you,you are the best!
Great tip, saved in a pinch upgrading a clients ancient physical 2003 server to virtual 2008!
Still works in 2018!
Thanks for such a simple fix!
No worries – you’d be surprised how many hits this article still gets..!
you are a hero and a saint!
Thank you so much indeed!!!
You are a life saver. thanks for your efforts
Thank you so much! You are a hero. So easy and simple… a large effect.
A ton of thanks to you!
Still working on 2k19, thank you so much for this method showed
Possibly my oldest ‘still valid’ post..!
Thanks for the feedback…
A solution that simple and that works.
Takes against all the complicated solutions that can be found on internet.
Just the recognition of a lot IT.
Lot of time saved for me too !
Thank you! Sometimes “less” is “more.” I know, it’s 2019 and I am still keeping alive these legacy machines.
Thank you from the world of keeping legacy apps alive. I fortunately found this before I even started going down the Microsoft route. I cannot believe this thread has been going for years. Thanks for the upgrade task list, it’s perfect!
excellent works great
Thank you
Still working, thanks
Just so you know, this post is STILL helping people in 2020 😉
Thanks!
Still working in 2020 for me too.
Even after re-installing KB926141 and uninstalling it, the upgrade still moaned.
Folder rename as suggested worked a treat.
Thank you!
nice and easy… thanks for google after you to carry such an article in search 😉
keep up the good work
Thanks for the feedback Junaid