WinSXS Cleanup on Windows8 & Server 2012

*** UPDATED *** Check the new post using Patch Cleaner *** UPDATED ***

WinSX has been the bane of many system engineers, including me. There have been many hacks and workarounds to try and shrink the size of the WinSX folder. None of them really worked, and at worst, caused significant problems with the Windows operating system.

We now have hope. There is finally a way to cleanup the WinSXS folder on Windows8 and Server 2012. I must stress, this is most beneficial for Server 2012 operating systems.

With current versions of Windows, all roles and files are available on the system. This means when you go to add a new role or feature, you’re not prompted to supply media to copy system files. This was very common with Windows 2000 and 2003, and a real pain.

The downside to this approach is when Windows checks for updates, updates are downloaded for all roles and features currently available on the system, regardless of whether you are using them or not. What this leads to is a huge WinSXS folder.

To clean up a Windows 2012 server, find out what roles are currently available:

  1. Open an administrative PowerShell command prompt
  2. Type Get-WindowsFeature to get a list of Windows Roles
  3. To uninstall a role, use the following command
    Uninstall-WindowsFeature –name <name of role/feature> -remove
  4. Example: Uninstall-WindowsFeature -name Web-Server -remove
  5. Run Get-WindowsFeature again to see what has changed
    That looks a bit better

This alone will save around 1.5GB of disk space.

But what about all the updates that have been applied to the various components of Web-Server? These need to be marked and removed. Run the following command:

dism.exe /online /cleanup-image /startcomponentcleanup

This scans all updates and checks if they are no longer needed. If they are no longer needed, the update is marked. However, this command does not remove them. To remove the updates:

  1. Run DiskCleanup
  2. Select C: drive and click OK
  3. One the scan is complete, select Cleanup System Files
  4. This will run the scan again. You should see the following
  5. Once the scan has finished again, select Windows Update Cleanup
  6. Now click OK

In our testing, when the web server role was removed from a terminal server, with the updates removed, we freed up 20GB. Yes that’s right, 20GB!

For more information, please see the following links:

3 thoughts on “WinSXS Cleanup on Windows8 & Server 2012”

Leave a Reply