Friday 11 September 2009

10 Steps to the Holy Grail of Free Space

Here are the 10 steps you need to free up a lot of space on your Windows installation drive:

  1. Go to http://support.microsoft.com/kb/290301
  2. Scroll down and click the download link.
  3. Run the executable you've just donwloaded (msicuu2.exe).
  4. Next, I accept, Next, Next.
  5. Wait a bit. Don't click Cancel!
  6. Click Finish
  7. Start -> Run...
  8. Type in "cmd". Hit Enter.
  9. "C:\Program Files\Windows Installer Clean Up\MsiZap.exe" G! (type in the quotes too)
  10. Check how much space you freed.

And now here's the back story. At work, my hard disk has a crappy 80GB and is split in two partitions. Windows XP is installed on drive C: which is only 25GB. I didn't notice how the used space just grew and grew, until the first bubble popped up in the System Tray, warning me drive C: is low on space. I clicked it and it started the Clean Up program - compressing old files, removing temps, whatever. I was OK. For the moment.... Pretty soon another bubble popped up. And this repeated quite a few times.

For some time now, I've been lounging around 1GB of free space. Then I noticed the Windows Updater couldn't finish the current one, and it just tried installing over and over again, always when I left work and hit "Shut down and install updates". Of course, it was trying to install Service Pack 1 for Visual Studio 2005. Which means it downloaded (in the background) the half-a-giga installer. When I shut down Windows, it would execute it an try to install the Service Pack. Of course, it would fail because it didn't have enough space. And so, the next day, the process happened again. And the next, and the next, and next week and so on. First thing I thought of was to kill the updater forever, but the IT guys didn't allow this and I didn't know the Admin password.

I didn't want to repartition the disk, so I just deleted some programs I didn't use. Moved documents to drive D: and stuff like that. The updater wasn't really annoying, since it did all the work when I wasn't there. But, from time to time, I would see that blasted bubble pop up, my free space jumbling between zero and 1GB and that was starting to bug me. I searched the net for articles about cleaning up your Windows folders, but nothing really useful. So I started a hunt of my own.

I looked for areas to free up. The target was big folders. Of course, I ignored important stuff like the Windows dir and other important-looking areas. I found "C:\Documents and Settings\ANDI\Local Settings\Temp" ("ANDI" is my username). Pay notice that "Local Settings" is hidden. In this folder I saw big (meaning 4-5 hundred megs; in my search I ignored anything that had less then 100) VMware stuff, and some exe or msi files that sometimes I couldn't delete because they were in use. Guessing they were updater files and thus didn't need them, I erased them. Of course, they just reappeared after a few days so I was back to that annoying repeating task.

And, if you see the pattern emmerging, after a few of that, I got angry again. This gave the courage to look into the Windows dir. Dusting away the spider webs, my sight fell on "C:\Windows\Temp". Cool! Another one to empty. It contained something called "VS80SP1fsdgfSDFGSDFGSFSGFGdfs...". Ah, the stupid Service Pack installer. Delete! Of course, if it wasn't yet installing. Otherwise, that meant waiting for it to fill up all the space and stop, or do a restart.

I hope by this point you're not surprised that this didn't solve my problem either. My situation was this. Do my work, and when that bubble popped up let the cleanup do it's work, and delete any big stuff in the two directories I mentioned. And this went on and on, until today when I looked some more in my Windows dir and noticed "C:\WINDOWS\SoftwareDistribution\Download", 900MB. I searched the net to see if it was ok to delete it. It looked like some uninstall, or installer remnant crap, so I wiped it. I think it's a good point to list the dirs that are subject for deletion when you're low on space. They are:

  • C:\Documents and Settings\(username)\Local Settings\Temp
  • C:\Windows\Temp
  • C:\WINDOWS\SoftwareDistribution\Download

There are others, but these are the main ones I found. I was looking at about 2GB and I had an idea. That stupid updater always downloaded the installer to drive C:. So I downloaded it manualy from Microsoft and saved it to D. I ran it from there. For one hour it was just gathering requirements, then it filled up 1GB, and after some more configuration stuff, I could see the free space just going down, and down, right down to zero! Now that was cool. Seeing that the partition was completely full. It took another half-hour for the installer to clean-up. Also note that I previously tried the installer with just below 1GB and it complained it didn't have enough space. It didn't complain when I had 2GB, but still it went to fill it all up. It was close to finishing, though.

So back I was, looking for stuff to delete. I looked in Program Files, but everything there seemed to be useful. That was the second largest folder on the drive. The first was, of course, Windows. It was a whopping 15GB, but I said it's ok. I had a preconception that initially the Windows dir is 10GB so I guessed it just grew with updates over the years. Anyway, I entered it and started tapping space over every directory. System32 was big, assembly was big. Of course. That's where Windows actually is. But they weren't that big. A lot of space was missing. Like the dark matter missing from the Universe.

That's when I saw the Black Hole! A folder named Installer. 10GB! WTF?! A quite plausible explanation rushed through my mind that it was Windows's weird way of keeping its stuff, just installing stuff when it was needed, but nah! It couldn't be. Even for Windows. So I searched the net again. It seems that after you install a program, the installer is copied there, for when you would want to uninstall the application. I also found a link to a blog post that explains the tool I showed you and explains how it works. It removes any of those installers that are not needed anymore for your current installed apps. Meaning it's safer for you to use it, rahter than just deleting manually from the Installer folder.

So I ran it. You can imagine after so many failed attempts, my hopes were really low. It finished in an instant and it also reported some errors. Then, I looked at the free space. My eyes dropped! 10GB of free space! I was astounded. After all that! This was really much more than I hoped for. It all really felt like I completed the Quest for the Holy Grail.

I hope you enjoyed my story, beacuse now I have to put up a disclaimer:

I don't know how safe it is. I'll have to wait some time to see that I don't have any problems and report back. I've only done this on Windows XP and right now I'm going to run it on my home 4-year old laptop with a lousy 40GB hard disk. I don't know if it works for other versions of Windows. If you don't care about what I've just warned you, then just do the 10 steps. If you are unsure, search for other opinions. Google for "MsiZap", "Windows\Installer" or anything else you find here. You could add "safe to use/delete".

Hope this was useful....

No comments: