I’ve come across several servers that have had issues installing Windows Updates. This typically happens on Server 2008 R2, and is usually tied to an update rollup package. The error code is 80004005

I have found this to be a somewhat generic problem, and MANY people have run into it. Often, they have to reinstall Windows to fix the problem. The common element is that it is tied to disk space.

First and foremost, make sure your primary OS partition (C:) has a fair amount of free space. If you’re lucky, that will fix it. Often times it does not, and the issue is disk space on a semi-hidden partition.

Here is an example of a server that is out of disk space on the “Hidden” partition:

In this example, you see a “System Reserved” partition on the computer’s single hard disk that is set to 100MB in size, and that drive is completely full. What’s on that drive? The only way to really see is to assign a drive letter to it. I’ll assign “E”. Once I’ve done that, I can browse to the drive and see there is only 1 folder, and it takes up only 14 MB.

Turning on hidden/system files doesn’t change the view. If I use a program like WinDirStat to see disk usage, it’s also not much help:

This shows “Unknown files” are 85.7% of the disk usage. You can’t browse to them or access them in anyway. This does show us the problem, so we are half way toward fixing.

First of all, what is this partition for? Windows started creating a dedicated boot partition fairly recently in Windows (Windows 7/2008, I believe). This partition gets the boot files that are used to instruct Windows on how to boot up, which OS to load, etc, much like the old boot.ini files used to do. I’ve read that having journaling turned on can fill this partition, but that’s not what I have found on any servers (journaling had already been disabled). Some other “junk” files get stored there – perhaps logs of some kind – but they are impossible to remove.

So how do you fix? It’s actually not too difficult. Follow these steps (all assuming your OS is installed on the “C” partition):

1. Open an administrative command prompt

a. Run the following: bcdboot c:\windows /s c:

b. This will create all the boot files on the “c” drive.

2. Using the disk management utility, right-click the “C” drive, and select “Mark as Active”.

a. This tells Windows, on its next restart, to get the boot files from the C drive

b. It is normal to get a warning when you do this. As long as you completed the first step without error, this warning is ok to ignore

3. Reboot

4. After reboot, return to disk management

a. Right click the partition earlier set to “E”, and select “Format” (Quick format is fine)

5. Open an administrative command prompt

a. Assuming your OS is on the “C” drive and you labeled the hidden partition “E”, run the following: bcdboot c:\windows /s e:

b. This will recreate all the boot files on the “e” drive.

6. Reboot

This should resolve the issue. I apologize for no pictures, but Microsoft has yet to verify my account, allowing me to add pretty graphics.