SCCM 2012 R2 - Offline servicing error
I attended a customer site in which their Windows 8 image was failing to OfflineService through ConfigMgr 2012 with the error 'Failed to install update with error code -2146498513' and 'ErrorCode = 2095'
Checking if update (1 of 13) with ID 16795476 needs to be applied on the image. 1 content binarie(s) are associated with the update.SMS_OFFLINE_SERVICING_MANAGER12/2/2015 2:35:56 PM7876 (0x1EC4)
dism.exe tool info: version=10.0.10586.0, architecture=9SMS_OFFLINE_SERVICING_MANAGER12/2/2015 2:35:56 PM
Applicability State = APPLICABLE, Update Binary = C:\ConfigMgr_OfflineImageServicing\740bf77e-4e9d-4817-81fb-ea9f3b35fd63\windows8-rt-kb2871389-x64.cab.SMS_OFFLINE_SERVICING_MANAGER12/2/2015 2:36:51 PM7876 (0x1EC4)
Applying update with ID 16795476 on image at index 1.SMS_OFFLINE_SERVICING_MANAGER12/2/2015 2:36:51 PM7876
Failed to install update with ID 16795476 on the image. ErrorCode = 2095SMS_OFFLINE_SERVICING_MANAGER12/2/2015 2:37:05 PM7876 (0x1EC4)
Offline Servicing is the act of installing Windows updates. Conventionally servicing is done in an online state refering
that the operating system is up and running when a change is made. Online servicing is done via Windows Update. Offline
means that the installation is happening against a non-running version of Windows. ConfigMgr mounts the WIM file with DISM
and then install updates against the mounted directory. This distrinction is important as certain updates cannot be installed offline i.e Service Packs. Teh registry key ..Component Based Servicing hold information pertaining to pending updates. When the key 'SessionsPending' has the value 3 ConfigMgr cannot continue with OfflineServicing and updates will read 'APPLICABLE' but error with 'error code -2146498513'
To resolve it would be advisable to recreate a custom Windows Image file and run Updates Online (rebooting). If you are unable to recreate your Windows Image follow these commands below modifying the Registry of the Wim Offline.
Find the registry key
HKLM\MyKey\Microsoft\Windows\CurrentVersion\Compnent Based Servicing\SessionsPending
Take ownership of root Key
Assign Full Control to Administrator
Edit the DWORD Exclusives to value 0 (in my case it was 3)
Unload the registry
reg unload HKLM\MyKey
Commit the changes to the wim
C:\>dism /unmount-wim /mountdir:c:\temp\mount /commit
ConfigMgr 2012 Service Pack Upgrade
(SCCM 2012 R2 SP1 upgrade)
I was performing the initial Test Database command from the SMSSETUP\BIN\X64 directory of the installation media run the following command:
(Setup.exe /testdbupgrade <database_name> )
Once the Pre-requistite check runs it references 'Unsupported ConfigMgr database version' and log states 'Failed to connect to SQL Server to verify site version'.
If you search else where you may think this is a permissions based issue (definately check) but in my case this was not the case and i knew the database was supported.
===== INFO: Prerequisite Type & Server: SQL: =====
<<<RuleCategory: Database Upgrade Requirements>>>
<<<CategoryDesc: Checking the target ConfigMgr database is ready to upgrade...>>>
INFO: CheckTestDBVersion start ...
ERROR: Failed to connect to SQL Server to verify site version.
Unsupported ConfigMgr database version; Error; For the site database upgrade to succeed, the database version must be Configuration Manager 2012 R2 or later.
INFO: Start checking SQL Native Client 11.
INFO: SQL Native Client 11 is already installed on local machine.
Sql Server Native Client; Passed
INFO: SQL Server computer <Name.Domain.COM>
INFO: SQL Server named instance <>
INFO: Cannot connect to registry key.
Resolution: It was an issue in the Syntax on the command line. It is quite common for the database name to resemble CM_P01 or CM_P02 etc. However, in this case it was CM_PO1 and CM_P02 etc.
If you look closely there is a difference. Check whether its a ZERO (0) or a letter O