My notes on repairing broken systems that no longer install updates.
When /restorehealth fails, check the following:
Perform chkdsk /f on Boot volume
Clear \Windows\SoftwareDistribution\Download after stopping Windows Update service
Set UseWUServer to 0 in HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU if WSUS is being used
Perform DISM /startcomponentcleanup to see if superseded component is causing the problem
Perform DISM /restorehealth to see if problem is fixed
Examine C:\WINDOWS\Logs\DISM\dism.log for errors
Examine C:\WINDOWS\Logs\CBS\CBS.log for errors, especially missing Catalogs
Perform Google Search for associated KB Articles/Updates for missing catalogs
Download update from Microsoft Update Catalog site
Unpack the update with the following command:
Expand <update>.msu -f:* c:\temp
Add the update package to the SxS store with the following command:
Dism /online /add-package /packagepath=c:\temp\<update>.cab
If the missing catalogs are no longer present, or are horribly broken, remove from registry
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\PackageDetect
- Backup/export keys first!
- Search for package as well; search on the package listed in CBS.log as 'CBS Catalog missing'
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\ComponentDetect
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\PackageIndex
- The reference link for the CBS registry edits - Windows 10 V1703: Fix for DISM error 0x800F081F