The Windows Servicing Guy

Tips and tricks from a Windows support engineer on issues related to servicing

Windows 7/2008 R2 Service Pack 1 fails with 0x800f0a12

Windows 7/2008 R2 Service Pack 1 fails with 0x800f0a12

  • Comments 137
  • Likes

You might encounter an issue during the installation of SP1 for Win7/R2 where the installer exits with: 0x800f0a12

This is due to the automount policy for your machine being set to disable.  We block the service pack installation in these cases because we need to be able to write information to the BCD store during install and with automount turned off, we are not able to.  To resolve this, re-enable automount and then install the service pack.  Quick steps to do this in case you forgot are:

1.  Run DISKPART

2.  automount enable

3.  Restart

4.  Install SP1

An additional link: http://windows.microsoft.com/en-US/windows7/windows-7-windows-server-2008-r2-service-pack-1-sp1-installation-error-0x800F0A12

If your problem is not automount policy then you might have one of the other scenarios which can cause this error to occur (such as a third party boot loader).  Here are some other steps to try:

  • Ensure that the System Reserved partition is marked active (you can do this in Disk Management or DISKPART)
  • If you dont have a 100MB System Reserved Partition, make sure the drive with your Windows installation is active
  • Make sure that the Windows installation is the only active volume on your installation
  • If you have a 100MB System Reserved partition and it is marked active, give the partition a drive letter and reattempt the service pack installation
  • If you have SnapDrive from NetApp installed, it may need to be removed for the installation to work properly (source: http://communities.netapp.com/thread/13704)
  • Your BCD file could be corrupted, this can be checked by running BCDEDIT at an elevated command prompt to see if it returns normal values to you.  If it does not you'll need to rebuild it.
    • Rebuild the BCD store on your system by booting into WinRE and run the command: bootrec /rebuildbcd to rebuild the file
  • Lastly, disconnect any external devices, particularly storage devices such as EBooks and thumb drives

Let me know your results.

--Joseph

 

Comments
  • Hello All,

    thanks to your help I could install the service pack successfully. Here is what I did:

    1) I noticed that in YaST the boot loader had the option 'Activate this partition when selected for boot'. So I check this option and rebooted (with hindsight, just switching the flags with gparted would have been easier).

    2) Back in Windows 7 could install SP1 without any further problems.

    3) Problem was, that now my system would always boot to Windows and ignore grup entirely

    4)  But using gparted I removed the 'boot' flag from sda1 and set it back to my 'sda3'

    Everything is fine now, and the two operating systems lived happily ever after :)

  • Great, thanks for coming back with your result.

  • Yes, thanks.  And thanks Danielle for bringing this up.

  • You're welcome. I'm always happy to give back what I have learnt on blogs like yours.

  • My original install is XP. I installed W2K08 R2 on a partition I created using Acronis. Essentially, the MBR resided on the XP volume, so using the diskpart or mountvol commands did not help resolve the 800f0a12 error.

    I used EasyBCD to simply move the MBR from the XP volume to the W2K08 volume, and was immediately able to install the SP1 after reboot.

  • Just to be picky, i would not be refering to a 'System Reserved partition'. I would call it the 'System partition' on a BIOS system, or the 'EFI System partition' on an EFI system.

    en.wikipedia.org/.../EFI_System_Partition

    'System Reserved partition' could be mistaken for 'Microsoft Reserved Partition' - *not* the same thing:

    en.wikipedia.org/.../Microsoft_Reserved_Partition

    Conversations about system and boot partitions always remind me of this quote:

    "You may find [the Microsoft documentation's] definitions to be a little cross-eyed. […] In a nutshell, the boot files in the system partition load the system files from the boot partition. Confusing? You bet it is."

    homepage.ntlworld.com/.../boot-and-system-volumes.html

    Worse luck; Boot partition = %systemdrive%

  • Drew;

    I appreciate the pickiness but in this case the terminology is correct. We do call it the system reserved partition and its used for the boot files and as storage space for a system in the event you implement Bitlocker.

    To use Markus's entries from above and your terms:

    Partition      | File System   |     Label                    |Size          | Used    | Unused    | Flags

    /dev/sda1   | ntfs                  | System Reserved  | 100 MiB  | 33 MiB |  66 MiB      | ---  <----boot flag should be here on the sytsem partition (note it is called system reserved)

    /dev/sda2   | ntfs                  | ---                              | 335 GiB  | X GiB    | 335-XGiB  | ---  <--- Windows boot partition

    /dev/sda3   | extended        | ---                              | 37 GiB    |                |                    | boot, lba

    MSR is definately not the same thing and I agree with you that we've made a lot of this too confusing (which is one of the reason that after many years of doing this I still had the brain fart in the comment above).  Does that make sense?

    --Joseph

  • Where can I find this "disk managment" tool mentioned avove?

    Christian

  • You can get into Windows Disk Management by right clicking My Computer and choosing Manage.  Disk Management will be the bottom tree in the MMC.

    GParted, mentioned above, is located here: gparted.sourceforge.net

    NOTE: I dont support that tool

  • I have set the "active" flag for the 100mb system partition and now SP1 installed

    successfully. Did not yet check if Linux is still working.

    Chris

  • Joseph, i can't find a reference to "System Reserved partition" in MSFT documentation. The article "Understanding Disk Partitions" states "the active partition is typically a separate partition called a system partition".

    technet.microsoft.com/.../dd799232(v=ws.10).aspx

    I'm not saying i don't agree with you, but i can't find a reference.

    I actually like the Microsoft terminology (in spite of what i quoted above). The [EFI ]System [Reserved] partition contains a menu of 'systems', and links to each system's boot loader (post XP anyway). Also, a lot more booting occurs winload.exe -> explorer.exe than BIOS -> bootmgr.exe. Perfect sense!

  • Here's the only MS related link I could find for it: technet.microsoft.com/.../gg441289.aspx

  • > Did not yet check if Linux is still working.

    No, the grub boot menu was no more appearing. So I tried to reset this "active flag" for

    the 100 MB system partition, but this was not possible, so I have put to active flag

    for the windows main partition.

    Now the computer is not booting anymore (bootmgr missing).

    Any advice ? Should I try to reset the flags with gparted ?

    Christian

  • The bootmgr issue is because you removed the active bit from the system reserved partition (the 100MB partition), thats where we keep the boot files.  I have no clue with regards to the grub piece.

  • OK, I've tried everything in the article and the comments and STILL CANNOT get SP1 to successfully install.

    I have Win7 x64 and Ubuntu 10.1. My Ubuntu is installed on a second hard drive and WIn7 on my primary.

    - I've used the DISKPART method in the article itself and that didn't land me anything at all.

    - I went ahead and tried the GParted method of setting the boot flag to my 100MB System-reserved bit and removing the boot flag from my Ubuntu install. Nothing.

    - I've also attempted setting the two sections of my C: drive (system-reserved and the actual Windows installation) to active and that didn't bring me anything at all.

    Does anyone have any other ideas on how I can go about getting my machine updated?