How do I remove Windows Update uninstall files on Windows Server 2008?
Solution 1
Associating the files with patches.
The "WINDOWS\Installer\
" folder has several key
sub-folders.
You can search for the sub-folder name (without the braces {}
) in the registry.
The key can be searched within the "HKLM\SOFTWARE\
" tree
to get the Software association.
The key would be placed in the Installer
sub-tree on the name ENU_GUID
.
Similarly, in the registry path "HKEY_CLASSES_ROOT\Installer\Products\
",
The key will usually match in a subtree against the "ProductIcon
" name.
There will be a "ProductName
" field next to it that will give you an association.
This search should be script-able with a dir WINDOWS\Installer /d
output
stored to a text file that is processed with a registry search.
The .MSP
files have a level of indirection in the registry.
You should search for the MSP name first in,
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\
That will give you a Patch number (the sub-tree name string) which is to be then searched again in the same path as above. The associated registry sub-tree will give you details for the patch.
Meanwhile, the mouse-over context in my Windows XP explorer also gives basic information on the patch. Have you checked that already?
Older data:
Use msizap to remove orphaned cached Windows Installer Data Files to increase free disk space.
Msizap is a command-line tool that can delete the configuration data that Windows Installer maintains for products that it installs, including the directories, files, registry subkeys, and registry entries in which Windows Installer stores configuration data.
Running msizap.exe with the
G
parameter removes orphaned cached Windows Installer data files for all users
The article discusses up to Windows Server 2003.
Update: This Microsoft KB description also limits at Server 2003.
It should work for Server 2008, or there would be another version for it.
The article describes existence of two versions.
There are two versions of MSIZAP.EXE:
MsiZapA.exe (for use in Windows 95, Windows 98 and Windows ME), and
MsiZapU.exe (for use in Windows NT, Windows 2000, Windows XP, and Windows Server 2003). The appropriate executable should be renamed MsiZap.exe.
Download references -- in case that link goes dead.
Msizap can be downloaded as a part of the Microsoft Windows Server 2003 Support Tools or the Windows Installer CleanUp Utility (EXE). I was unable to find the Windows Installer CleanUp Utility by searching Microsoft’s download site, so note that as of today the file’s name is msicuu2.exe if you the above link goes dead in the future.
If you don’t want to install the Windows Installer CleanUp Utility, use a program such as Universal Extractor (aka UniExtract) to extract the individual files. Once you extract the files, you’ll notice msizap.exe does not exist, but you will find MsiZapA.exe and MsiZapU.exe.
Solution 2
For Q1, you mean just the normal Windows Updates files that get installed through Automatic Updates? You can free up that space by deleting the content INSIDE C:\windows\SoftwareDistribution\Download
The $NtUninstallKB folder in previous OS' doesn't exist in Windows 2008 so you can't just delete the uninstall files anymore.
Solution 3
16 GB is pushing it for a system volume for Win2008 - a fresh install with updates has taken up 15 GB on my 2008 VM. I am not sure about freeing up space within the system volume by deleting "unnecessary" files and folders, but the good news is it is a VM, it is Win2008, and you can actually make the system disk bigger quite easily because of these 2 things.
I am running a Win2008 VM on a standalone ESXi 3.5 box. To increase the size of the system disk:
1) Edit the VM properties and change the hard disk size to something larger (I'd recommend at least 40 GB or more to ensure you don't have to do this again)
2) Reboot the VM (you may not actually have to do this step, but I did on mine - seemed too crazy to be able to resize the system volume without rebooting since it is Windows after all...)
3) Go to Disk Management and you should see the extra space as X amount of unallocated space.
4) Right click your system volume and select "Extend Volume...". Go through the wizard to add the additional space to your system volume and you now have a larger one than you did before.
Goes without saying that you could also do this to your Data disk as well. Even if this wasn't a VM you could still add another physical disk and extend onto that although you may be creating a less fault-tolerant configuration unless you are extending onto a RAID volume. Because this is a VM, all ESX does is make the vmdk file larger.
Solution 4
There are a number of things you can look at:
- Run disk cleanup, this will clear out some space.
- Next you can look at removing things like service pack and update uninstall files, if you are happy that these updates have worked and you won't need to remove them - see this article
- If your page file is on the smaller disk you could look at moving it to the larger disk.
- Disable system restore, if you are not using it
These are just a few I could think of, there are a number of good articles on the internet describing a variety of techniques for freeing space, some safe, some likely to destroy your windows install if you get it wrong, so beware!
Solution 5
They changed the Servcing stack in Vista and 2008 so you no longer get the $NTUninstall files in your system dir like with previous Windows versions. It wedges everything in to the WinSxS directory to give more robust rollback and use-the-latest-version-of-a-file abilities.
Have a look at the Windows Component Clean Tool (compcln.exe) that comes with SP2 for 2008 or Vista, it'll ditch some files, but only frees up around 900MB for me. Still, better then nothing.
Related videos on Youtube
Robert Koritnik
Remote web developer, consultant, enthusiast, geek.
Updated on September 17, 2022Comments
-
Robert Koritnik over 1 year
I'm running Windows Server 2008 Standard running in VMware. It has 2 disks:
- system disk: 16 GB
- data disk: 500 MB
I installed Visual Studio 2008 SP1 + MSDN and some small tools and libraries that don't take much space. Over time the system disk's free space has been going down (I suspect because of regular system updates - NetFx (.NET), service packs, and regular updates).
Questions 1
How do you remove Windows Update uninstall files from Windows Server 2008?Question 2
I also found lots of files inC:/Windows/Installer
folder.
Is it possible to determine which .msp file goes with which patch?
I would like to delete some of them, because they do take a lot of space.-
nik almost 15 yearsFor freeing up space: superuser.com/questions/8141/reclaiming-disk-space-on-windows/…
-
Robert Koritnik almost 15 yearscan you provide some more info, since superuser site is still in beta and I don't have access to it.
-
Vijay Anand Mareddy almost 15 years
-
Vadzim about 4 yearsSee also How can I free up drive space from the Windows installer folder without killing Windows?. PathCleaner easily saved 20 Gb in my case.
-
Robert Koritnik almost 15 yearsI did run disk cleanup utility that freed up about 50MB... :( I was hoping to find some info on the link you provided, but it refers to Windows Server 2000 and not 2008...
-
Sam Cogan almost 15 yearsThe process is the same for 2000, 2003 or 2008. As for the page file, you do want some page file on the C: drive for debug, but it can be minimal size
-
Robert Koritnik almost 15 yearsthans, but that's not what I'm after. I'm using VMWare Workstation and there's "vmware-vdiskmanager" tool for this stuff. But I want to get rid of all garbage I don't need. My fresh install was around 11GB I think... or 12. But not more. It depends which features you installed.
-
Robert Koritnik almost 15 years@Sam: No, Server 2008 obviously uses a different folder location for update uninstall files.
-
Robert Koritnik almost 15 yearsMsiZap is something I have run already. It only removes ORPHANED ones. I would like to know which MSP files are related to which patch to manually delete those. And I mean the ones that are not orphaned. And about Cleanup utility. I don't want to unsinstall patches and programs. I just want to remove their uninstall files (in XP you could just delete a bunch of compressed folders within Windows folder)
-
Robert Koritnik almost 15 yearsInteresting. Or at least compressing Installer folder. Thanks for the idea (still not a direct answer though)
-
nik almost 15 years@Robert, I get your point.
-
Robert Koritnik almost 15 years@nik: GUID folders usually contain smaller files. Ok. I'm able to determine those... What about .MSP files in Installer folder?
-
Robert Koritnik almost 15 years@nik: what gets displayed in your hint window when you mouseover some MSP file? Server 2008 doesn't display anything useful nor does it say anything in file properties/details.
-
Florian Haider almost 15 yearsNot sure how this deserves a down-vote as it DOES provide a valid alternative to deleting Windows system files. Robert edited his question to say "No other possible solutions to free-up disk space will be considered." AFTER I already provided this answer...
-
JamesRyan almost 15 yearsthe installers for updates go in there too
-
Massimo almost 15 yearsAPPLICATIONS updates, not O.S. ones; and they're anyway needed for change/repair/uninstall/upgrade of said applications.
-
JamesRyan over 14 yearsalthough they may technically be applications, patches to things like .net framework and silverlight are downloaded by windows update and bunged in this folder automatically
-
Robert Koritnik over 14 yearsYour solution about MSP files (with relation to registry) is correct that's why I awarded you with bounty points. Thanks nik. I was able to delete the big ones (ie. Office SP2 and others) and release a huge amount of disk space because I know I won't uninstall them.
-
JamesRyan over 13 yearsif you delete them then you will have trouble applying subsequent patches to those apps
-
Chadddada almost 12 yearsAre there any updates to this? I try to revisit the topic of deleting old patches/updates from Server 2008 every couple of months. A couple of the tools mentioned in this thread don't seem to exist in Server 2008 R2. So far the things that seem to work are still just running disk cleanup and emptying out c:\windows\softwaredistribution\download. Any updates? Moving to here as OP didn't like my bump.