Scenario:
A two node cluster required new and old software updates to bring it up to compliance. The installation of KB3000850 was failing to install either manually or via SCCM deployment on one node but not the other.
WUAHandler.log
Installation job encountered some failures. Error = 0x80240022. Commit Result = 0x00000001
CBS.log
Not able to add file to extract: update.ses [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
CBS Store corruption, manifest missing for package: Package_33_for_KB3081320~31bf3856ad364e35~amd64~~6.3.1.1
CBS Mark store corruption flag because of package: Package_33_for_KB3081320~31bf3856ad364e35~amd64~~6.3.1.1. [HRESULT = 0x800f0831 - CBS_E_STORE_CORRUPTION]
Failed to resolve package [HRESULT = 0x800f0831 - CBS_E_STORE_CORRUPTION]
WER: Generating failure report for package: Package_for_KB3000850~31bf3856ad364e35~amd64~~6.3.1.8, status: 0x800f0831, failure source: Execute, start state: Staged, target state: Installed, client id: WindowsUpdateAgent
Common troubleshooting steps carried out without success:
net stop wuauserv
net stop cryptsvc
Ren %systemroot%\SoftwareDistribution SoftwareDistribution.bak
Ren %systemroot%\system32\catroot2 catroot2.bak
net start wuauserv
net start cryptsvc
SFC /Scannow
Dism /Online /Cleanup-Image /RestoreHealth /Source:wim:E:\sources\install.wim:1 /limitaccess
Resolution:
Note the KB detailed within the CBS log after "Store corruption, manifest missing for package:". In my case it was KB3081320. This KB was not installed on the failed node from within control panel or Powershell (get-hotfix | select hotfixid) however, the manifest file was present within the folder C:\Windows\servicing\Packages.
Download the KB MSU file from the Microsoft Update catalog and extract the CAB file to a temp directory.
expand C:\temp\updates\windows8.1-kb3081320-x64_d6e34f82e20d9efa19ab0ae7a938f8d80c01416e.msu /f:* C:\temp\updates\kb3081320
Then remove the package using DISM; this will in affect remove the manifest file from C:\Windows\servicing\Packages
dism /online /remove-package:C:\Temp\Updates\kb3081320\Windows8.1-KB3081320-x64.cab
Finally after removing the corrupted manifest files /updates the intended update KB3000850 will install via DISM/SCCM successfully and the CBS log will not have any corruption errors.
Dism /online /add-package /packagepath:C:\Temp\Updates\kb3000850\Windows8.1-KB3000850-x64.cab
A two node cluster required new and old software updates to bring it up to compliance. The installation of KB3000850 was failing to install either manually or via SCCM deployment on one node but not the other.
WUAHandler.log
Installation job encountered some failures. Error = 0x80240022. Commit Result = 0x00000001
CBS.log
Not able to add file to extract: update.ses [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
CBS Store corruption, manifest missing for package: Package_33_for_KB3081320~31bf3856ad364e35~amd64~~6.3.1.1
CBS Mark store corruption flag because of package: Package_33_for_KB3081320~31bf3856ad364e35~amd64~~6.3.1.1. [HRESULT = 0x800f0831 - CBS_E_STORE_CORRUPTION]
Failed to resolve package [HRESULT = 0x800f0831 - CBS_E_STORE_CORRUPTION]
WER: Generating failure report for package: Package_for_KB3000850~31bf3856ad364e35~amd64~~6.3.1.8, status: 0x800f0831, failure source: Execute, start state: Staged, target state: Installed, client id: WindowsUpdateAgent
Common troubleshooting steps carried out without success:
net stop wuauserv
net stop cryptsvc
Ren %systemroot%\SoftwareDistribution SoftwareDistribution.bak
Ren %systemroot%\system32\catroot2 catroot2.bak
net start wuauserv
net start cryptsvc
SFC /Scannow
Dism /Online /Cleanup-Image /RestoreHealth /Source:wim:E:\sources\install.wim:1 /limitaccess
Resolution:
Note the KB detailed within the CBS log after "Store corruption, manifest missing for package:". In my case it was KB3081320. This KB was not installed on the failed node from within control panel or Powershell (get-hotfix | select hotfixid) however, the manifest file was present within the folder C:\Windows\servicing\Packages.
Download the KB MSU file from the Microsoft Update catalog and extract the CAB file to a temp directory.
expand C:\temp\updates\windows8.1-kb3081320-x64_d6e34f82e20d9efa19ab0ae7a938f8d80c01416e.msu /f:* C:\temp\updates\kb3081320
Then remove the package using DISM; this will in affect remove the manifest file from C:\Windows\servicing\Packages
dism /online /remove-package:C:\Temp\Updates\kb3081320\Windows8.1-KB3081320-x64.cab
Finally after removing the corrupted manifest files /updates the intended update KB3000850 will install via DISM/SCCM successfully and the CBS log will not have any corruption errors.
Dism /online /add-package /packagepath:C:\Temp\Updates\kb3000850\Windows8.1-KB3000850-x64.cab
Thanks for writing this one up. I've seen errors in CBS.log before, but not this one, will keep a keen eye on any failures that seem similar to this.
ReplyDeleteThank you very much, this helped me fix an installation of SSRS 2017 that required .Net 4.5.2 to be installed. However, the installation of the .Net 4.5.2 was failing with CBS_E_STORE_CORRUPTION and these steps resolved it.
ReplyDeleteGrettings!
ReplyDeleteStill get 0x800f0831 error (see below).
What else can I try?
===
dism /online /remove-package:"C:\Temp\Updates\kb3205401\Windows8.1-KB3205401-x64.cab"
Deployment Image Servicing and Management tool
Version: 6.3.9600.17031
Image Version: 6.3.9600.17031
Processing 1 of 1 - Removing package Package_for_RollupFix~31bf3856ad364e35~amd64~~9600.18545.1.4
[==========================100.0%==========================]
The operation completed successfully.
Dism /online /add-package /packagepath:"C:\Temp\Updates\kb3205401\Windows8.1-KB3205401-x64.cab"
Deployment Image Servicing and Management tool
Version: 6.3.9600.17031
Image Version: 6.3.9600.17031
Processing 1 of 1 - Adding package Package_for_RollupFix~31bf3856ad364e35~amd64~~9600.18545.1.4
[==========================100.0%========================= ]
An error occurred - Package_for_RollupFix Error: 0x800f0831
Error: 0x800f0831
DISM failed. No operation was performed.
For more information, review the log file.
The DISM log file can be found at C:\Windows\Logs\DISM\dism.log
Can you install the MSU file not the CAB extracted, then if it fails provide the CBS.log ?
DeletePretty good post. I just stumbled upon your blog and wanted to say that I have really enjoyed reading your blog posts. Any way I'll be subscribing to your feed and I hope you post again soon. Big thanks for the useful info. offshore development
ReplyDeleteGood to become visiting your weblog again, it has been months for me. Nicely this article that i've been waited for so long. I will need this post to total my assignment in the college, and it has exact same topic together with your write-up. Thanks, good share. crypter features
ReplyDelete