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ód | Chyba | Popis |
0 × 80070002 | ERROR_FILE_NOT_FOUND | Systém nemůže najít zadaný soubor. |
0x8007000D | ERROR_INVALID_DATA | Data jsou neplatná. |
0x800F081F | CBS_E_SOURCE_MISSING | Zdroj balíčku nebo souboru nebyl nalezen. |
0 × 80073712 | ERROR_SXS_COMPONENT_STORE_CORRUPT | Úložiště součástí je v nekonzistentním stavu. |
0x800736CC | ERROR_SXS_FILE_HASH_MISMATCH | Soubor komponenty neodpovídá ověřovacím informacím přítomným v manifestu komponenty. |
0x800705B9 | ERROR_XML_PARSE_ERROR | Požadovaná data XML nelze analyzovat. |
0 × 80070246 | ERROR_ILLEGAL_CHARACTER | Byl zjištěn neplatný znak. |
0x8007370D | ERROR_SXS_IDENTITY_PARSE_ERROR | Řetězec identity je poškozen. |
0x8007370B | ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME | Název atributu v identitě není v platném rozsahu. |
0x8007370A | ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE | Hodnota atributu v identitě není v platném rozsahu. |
0 × 80070057 | ERROR_INVALID_PARAMETER | Parametr je nesprávný. |
0x800B0100 | TRUST_E_NOSIGNATURE | V předmětu nebyl žádný podpis. |
0 × 80092,003 | CRYPT_E_FILE_ERROR | Při čtení nebo zápisu do souboru došlo k chybě. |
0x800B0101 | CERT_E_EXPIRED | Pož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. |
0x8007371B | ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE | Není přítomen jeden nebo více požadovaných členů transakce. |
0 × 80070490 | ERROR_NOT_FOUND | Windows 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.
- DISM, na rozdíl od většiny nástrojů Windows, rozlišuje velká a malá písmena.
- 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 / scannowTip. 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