Obnova úložiště komponent v systému Windows 8

Pokud se v systému Windows 8 vrátíme k technologii Component Store, budeme zvažovat její obnovení. Připomeňme, že od systému Windows Vista společnost Microsoft představila koncept servisu založeného na komponentách. Díky struktuře komponent bylo možné vytvořit stabilnější systém pro instalaci / odinstalaci aktualizací, oprav a aktualizací SP. Stejný systém je základem architektury Windows 8. Soubory úložiště součástí systému Windows na disku jsou umístěny v adresáři \Windows\Winxx, která má vlastnost v průběhu času významně narůstat (další podrobnosti o tom, proč se velikost tohoto adresáře v průběhu času zvětší a jak zmenšit velikost složky WinSxS, přečtěte si tento článek).

V některých případech však může dojít k poškození úložiště součástí, což vede k problémům při instalaci aktualizací systému Windows a jiného softwaru společnosti Microsoft. Společnost Microsoft vyvinula speciální nástroj pro obnovení úložiště součástí v předchozích verzích systému Windows (Windows Vista, Windows 7, Windows Server 2008 / R2). - Checksur nebo Nástroj pro připravenost aktualizace systému (KB947821). Tento nástroj je poměrně velký (přes 350 MB) a jakmile budou k dispozici nové aktualizace systému Windows, bude pravidelně aktualizován. To znamená, že pokaždé, když musíte čerpat novou verzi Checksur.

Tip. V jednom z předchozích článků jsme již prozkoumali příklad použití CheckSUR k vyhledávání a obnově poškozených součástí: 0x800F0818 - chyba během rolí v systému Windows Server 2008 R2.

Co tento nástroj dělá? Nástroj připravenosti aktualizace systému kontroluje integritu následujících zdrojů:

    Soubory v adresářích:

  • % SYSTEMROOT% \ Servicing \ Packages
  • % SYSTEMROOT% \ WinSxS \ Manifests
    Obsah poboček registru:

  • % SYSTEMROOT% \ WinSxS \ Manifests
  • HKEY_LOCAL_MACHINE \ Schema
  • HKEY_LOCAL_MACHINE \ Components
  • HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows \ CurrentVersion \ Component Based Service

V případě, že obslužný program CheckSUR zjistí chyby nebo nekonzistence, pokusí se je opravit.

Problémy s ukládáním součástí mohou při instalaci aktualizací systému Windows způsobit různé chyby. Následuje seznam běžných chybových kódů, které by tento nástroj měl vyřešit..

Seznam chyb WindowsUpdate způsobených poškozením úložiště součástí

KódChybaPopis
0 × 80070002ERROR_FILE_NOT_FOUNDSystém nemůže najít zadaný soubor.
0x8007000DERROR_INVALID_DATAData jsou neplatná.
0x800F081FCBS_E_SOURCE_MISSINGZdroj balíčku nebo souboru nebyl nalezen.
0 × 80073712ERROR_SXS_COMPONENT_STORE_CORRUPTÚložiště součástí je v nekonzistentním stavu.
0x800736CCERROR_SXS_FILE_HASH_MISMATCHSoubor komponenty neodpovídá ověřovacím informacím přítomným v manifestu komponenty.
0x800705B9ERROR_XML_PARSE_ERRORPožadovaná data XML nelze analyzovat.
0 × 80070246ERROR_ILLEGAL_CHARACTERByl zjištěn neplatný znak.
0x8007370DERROR_SXS_IDENTITY_PARSE_ERRORŘetězec identity je poškozen.
0x8007370BERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAMENázev atributu v identitě není v platném rozsahu.
0x8007370AERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUEHodnota atributu v identitě není v platném rozsahu.
0 × 80070057ERROR_INVALID_PARAMETERParametr je nesprávný.
0x800B0100TRUST_E_NOSIGNATUREV předmětu nebyl žádný podpis.
0 × 80092,003CRYPT_E_FILE_ERRORPři čtení nebo zápisu do souboru došlo k chybě.
0x800B0101CERT_E_EXPIREDPožadovaný certifikát není ve své době platnosti při ověřování oproti aktuálním systémovým hodinám nebo časovému razítku v podepsaném souboru.
0x8007371BERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETENení přítomen jeden nebo více požadovaných členů transakce.
0 × 80070490ERROR_NOT_FOUNDWindows nemohly hledat nové aktualizace.

Ve Windows 8 a Windows Server 2012 je funkce podobná CheckSUR již zabudována do systému a nazývá se Doručená pošta Korupce Oprava (vestavěná obnova součástí). Vestavěná obnova součástí může fungovat ve dvou režimech:  pozadí a manuální. Obnovení na pozadí se automaticky spustí, pokud dojde k chybám při pokusu o instalaci aktualizace Windows Update. Windows se v tomto případě automaticky pokusí opravit poškozenou součást a přeinstalovat balíček Windows Update. V případě, že automatické zotavení nemůže problém vyřešit samo, může správce opravit chyby ručně obnovením funkčního stavu úložiště součástí. To lze provést pomocí obslužného programu DISM Image Maintenance Utility (příkaz Dism / Online / Cleanup-Image)nebo pomocí Powershell (cmdlet Oprava-WindowsImage).

Chcete-li zkontrolovat stav úložiště komponent, otevřete příkazový řádek se zvýšenými oprávněními a spusťte:

Dism / Online / Cleanup-Image / CheckHealth

Tipy.

  1. DISM, na rozdíl od většiny nástrojů Windows, rozlišuje velká a malá písmena.
  2. Příkaz Dism / Cleanup-Image ukládá protokoly do adresářů C: \ Windows \ Logs \ CBS \ CBS.log a C: \ Windows \ Logs \ DISM \ dism.log

Podobné příkazy Powershell:

Oprava-WindowsImage -Online -CheckHealth

CheckHealth ověření bude trvat několik minut. Jak vidíte, aktuální stav úložiště komponent na obrázku je Zdravý, tzn. není vyžadováno žádné zotavení.

V případě, že budou nalezeny nějaké problémy nebo chyby, měli byste zahájit proceduru obnovy úložiště pomocí příkazu:

Dism.exe / Online / Cleanup-Image / Restorehealth

Podobný příkaz Powershell:

Oprava-WindowsImage -Online -RestoreHealth

V tomto příkladu byla obnova systémových souborů úspěšná:

Operace obnovení byla úspěšně dokončena. Byl opraven poškození úložiště součástí.

V případě, že by samotný systém nemohl obnovit některé součásti v úložišti, možná budete potřebovat distribuční sadu (instalační disketu) systému Windows 8. Vložte tento disk do jednotky nebo připojte jeho iso obraz. Předpokládejme, že písmeno jednotky je označeno písmenem E. Získání seznamu dostupných verzí systému Windows 8 na jednotce pomocí příkazu PoSH:

Get-WindowsImage -ImagePath E: \ sources \ install.wim

V tomto příkladu vidíme, že na disku je pouze jeden obraz (Windows 8 Pro) s indexem 1 (Index: 1).

Následující příkaz spustí obnovení úložiště s obnovou poškozených součástí z původního obrazu systému Windows 8:

Oprava-WindowsImage -Online -RestoreHealth -Zdroj G: \ sources \ install.wim: 1

, kde 1 je index verze obrázku v dříve získané distribuci.

Po dokončení obnovy se ujistěte, že je úložiště součástí ve zdravém stavu (stav: Zdravý).

Dalším (ne vždy povinným) krokem je kontrola integrity systémových souborů pomocí příkazu:

sfc / scannow
Tip. Pokud jste se rozhodli obnovit úložiště součástí kvůli problémům s instalací aktualizací systému Windows, restartujte službu Windows Update a resetujte mezipaměť místní aktualizace. Chcete-li to provést, spusťte na příkazovém řádku následující příkazy:
net stop wuauserv net stop bits net stop cryptsvc ren% systemroot% \ Software Distribution oldSD ren% systemroot% \ System32 \ catroot2 oldCat2 net start cryptsvc net start bits net start wuauserv