Chyba 0x80073712 pri inštalácii aktualizácií a komponentov v systéme Windows Server 2016 a Windows 10

Tvárou v tvár zaujímavej chybe 0x80073712 pri inštalácii aktualizácií v systéme Windows Server 2016. Ako sa ukázalo neskôr, táto chyba súvisí s poškodením ukladacieho priestoru komponentov systému Windows. Tento článok popisuje, ako opraviť úložisko komponentov v systéme Windows 10 / 8.1 a Windows Server 2016/2012 R2 a obnoviť fungovanie služby Windows Update..

Pri pokuse o inštaláciu aktualizácií v službe Windows Update sa objaví chyba:

Niektoré súbory aktualizácie chýbajú alebo sú problémy. Túto aktualizáciu sa neskôr pokúsime stiahnuť.

Kód chyby: (0x80073712)

Niektoré súbory aktualizácie chýbajú alebo majú problémy. Pokúsime sa stiahnuť aktualizáciu.

Kód chyby: (0x80073712)

Najskôr som sa pokúsil resetovať stav služby Windows Update a vyčistiť adresár SoftwareDistribution podľa odporúčaní z článku „Obnovenie aktualizácie Windows“, ale nepomohlo to.

Pomocou príkazu dism / online / get-balíčky Overil som, že všetky aktualizácie sú v stave nainštalovaný.

Ak majú niektoré aktualizácie Inštalácia čaká na vybavenie, môžete správne odstrániť príkaz DISM (použite svoju identifikáciu balíka):

DISM.exe / Online / Odstrániť balík / Názov_balíka:Package_for_KB4485447~31bf3856ad364e35~amd64~~10.0.1.1 / tichý / norestart

Dlho som sa rozhodol, akým spôsobom sa k tomuto problému priblížiť, ale v rámci riešenia problémov som potreboval nainštalovať súčasť .Net Framework 3.5 do systému Windows Server 2016. Pri inštalácii súčasti .Net pomocou DISM sa objavila typická chyba, ktorá ma viedla k ďalším krokom:

Požiadavka na pridanie alebo odstránenie funkcií na zadanom serveri zlyhala. Inštalácia jednej alebo viacerých rol, služieb rolí alebo funkcií zlyhala. Sklad komponentov bol poškodený. Chyba: 0x80073712.

Sklad komponentov je poškodený. Chyba: 0x80073712.

V tomto prípade nájdete nasledujúci riadok v súbore CBS.log (% WinDir% \ Logs \ CBS \ CBS.log):

[HRESULT = 0x80073712 - ERROR_SXS_COMPONENT_STORE_CORRUPT]

Ako vidíte, z nejakého dôvodu je ukladanie komponentov vášho systému poškodené, v dôsledku čoho služba Windows Update nemôže prijímať údaje z manifestu CBS (Service-Based Service), ktoré sú potrebné na inštaláciu aktualizácií. Úložný priestor môžete obnoviť pomocou zabudovanej funkcie DISM.

V najjednoduchšom prípade pri obnove úložiska komponentov nepotrebujete inštalačný disk s distribúciou Windows. V takom prípade systém použije úložné súbory na lokálnom disku a na webe Windows Update na obnovenie (lokálny server WSUS sa nedá použiť na obnovu komponentov).

Najprv skontrolujte stav skladu komponentov pomocou príkazu:

diz / online / cleanup-image / checkhealth

Ak sa po analýze objaví správa „obchod s komponentmi je možné opraviť“, môžete skúsiť obnoviť obchod s komponentmi pomocou príkazu:

diz / online / cleanup-image / restorehealth

V niektorých prípadoch to stačí. Ale môj obslužný program DISM vygeneroval chybu:

Chyba: 0x800f0906
Zdrojové súbory sa nepodarilo stiahnuť.

V takom prípade vyžaduje obnovenie systému Windows inštalačný disk s distribúciou systému Windows. Predpokladajme, že ste do distribúcie systému Windows pripojili súbor ISO. Teraz musíte skontrolovať zoznam aktuálnych vydaní systému Windows v súbore install.wim na pripojenom obrázku (disku):

dism / Get-WimInfo /WimFile:e:\sources\install.wim

V mojom prípade je nainštalované vydanie systému Windows Server 2016 Standard (Desktop Experience), takže v nasledujúcom príkaze použijem jeho index - 2.

dism / online / cleanup-image / restorehealth /source:e:\sources\install.wim:2 / LimitAccess

Znova skontrolujte stav skladu komponentov:

Dism / Online / Cleanup-Image / CheckHealth

DISM by sa mal vrátiť: Nebolo zistené žiadne poškodenie obchodu s komponentmi.

Po obnovení úložiska stačí reštartovať systém Windows a overiť, či sú aktualizácie a komponenty systému Windows nainštalované bez chyby.