Vraćajući se tehnologiji Component Store u sustavu Windows 8, razmotrit ćemo scenarije za njen oporavak. Podsjetimo da je Microsoft počevši od sustava Windows Vista predstavio koncept servisa temeljenog na komponentama. Zahvaljujući strukturi komponenti, bilo je moguće stvoriti stabilniji sustav za instaliranje / deinstaliranje ažuriranja, zakrpa i servisnih paketa SP. Isti sustav podliježe arhitekturi sustava Windows 8. Datoteke za pohranu komponenti sustava Windows na disku nalaze se u direktoriju \Windows\WinSxS, koji ima svojstvo s vremenom znatno povećavati veličinu (za više detalja o tome zašto veličina ove mape raste s vremenom i kako smanjiti veličinu mape WinSxS, pročitajte ovaj članak).
Međutim, u nekim se slučajevima trgovina komponenta može oštetiti, što vodi problemima prilikom instaliranja Windows ažuriranja i drugog Microsoftovog softvera. Microsoft je razvio poseban uslužni program za vraćanje komponentne pohrane u prethodnim verzijama sustava Windows (Windows Vista, Windows 7, Windows Server 2008 / R2) - CheckSUR ili Alat za spremnost ažuriranja sustava (KB947821). Ovaj je alat prilično velike veličine (preko 350 MB), a kako postaju dostupna nova ažuriranja za Windows, redovno se ažurira. To znači da svaki put kad morate ispumpati novu verziju CheckSUR.
vijeće. U jednom od prethodnih članaka već smo ispitali primjer korištenja CheckSUR-a za traženje i oporavak oštećenih komponenti: 0x800F0818 - greška tijekom uloga u sustavu Windows Server 2008 R2.Što ovaj uslužni program čini? Alat za spremnost ažuriranja sustava provjerava integritet sljedećih resursa:
- Datoteke u mapama:
- % SYSTEMROOT% \ Servisiranje \ Paketi
- % SYSTEMROOT% \ WinSxS \ Manifestacije
- Sadržaj podružnica registra:
- % SYSTEMROOT% \ WinSxS \ Manifestacije
- HKEY_LOCAL_MACHINE \ Shema
- HKEY_LOCAL_MACHINE \ Komponente
- HKEY_LOCAL_MACHINE \ Softver \ Microsoft \ Windows \ CurrentVersion \ Komponentno servisiranje
U slučaju da uslužni program CheckSUR otkrije pogreške ili nedosljednosti, pokušati će ih ispraviti.
Problemi s pohranom komponenata mogu uzrokovati različite pogreške prilikom instaliranja Windows ažuriranja. Slijedi popis uobičajenih kodova grešaka koje bi ovaj program trebao riješiti..
Popis pogrešaka WindowsUpdate uzrokovanih korupcijom u trgovini komponenta
kod | greška | opis |
0 × 80070002 | ERROR_FILE_NOT_FOUND | Sustav ne može pronaći specificiranu datoteku. |
0x8007000D | ERROR_INVALID_DATA | Podaci nisu valjani. |
0x800F081F | CBS_E_SOURCE_MISSING | Izvor paketa ili datoteke nije pronađen. |
0 × 80073712 | ERROR_SXS_COMPONENT_STORE_CORRUPT | Spremnik komponenata je u nedosljednom stanju. |
0x800736CC | ERROR_SXS_FILE_HASH_MISMATCH | Datoteka komponente ne odgovara informacijama za provjeru prisutnima u manifestu komponente. |
0x800705B9 | ERROR_XML_PARSE_ERROR | Nije moguće raščlaniti tražene XML podatke. |
0 × 80070246 | ERROR_ILLEGAL_CHARACTER | Naišao je nevažeći znak. |
0x8007370D | ERROR_SXS_IDENTITY_PARSE_ERROR | Niz identiteta nije oblikovan. |
0x8007370B | ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME | Naziv atributa u identitetu nije unutar valjanog raspona. |
0x8007370A | ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE | Vrijednost atributa u identitetu nije unutar valjanog raspona. |
0 × 80070057 | ERROR_INVALID_PARAMETER | Parametar nije točan. |
0x800B0100 | TRUST_E_NOSIGNATURE | U temi nije bio prisutan potpis. |
0 × 80092,003 | CRYPT_E_FILE_ERROR | Došlo je do pogreške dok Windows Update čita ili piše u datoteku. |
0x800B0101 | CERT_E_EXPIRED | Potrebna potvrda nije unutar roka valjanosti ako se provjerava u odnosu na trenutni sat sustava ili vremensku oznaku u potpisanoj datoteci. |
0x8007371B | ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE | Jedan ili više potrebnih članova transakcije nisu prisutni. |
0 × 80070490 | ERROR_NOT_FOUND | Windows nije mogao tražiti nova ažuriranja. |
U sustavima Windows 8 i Windows Server 2012 funkcionalnost slična CheckSUR-u već je ugrađena u sustav i zove se Ulazni spremnik korupcija popravak (ugrađeni oporavak komponenata). Ugrađeni oporavak komponenata može raditi u dva načina: pozadina i priručnik. Oporavak pozadine automatski započinje ako se pojave pogreške prilikom pokušaja instalacije Windows Update. Windows u ovom slučaju automatski pokušava popraviti oštećenu komponentu i ponovo instalirati paket Windows Update. U slučaju da automatski oporavak ne može sam riješiti problem, administrator može ručno ispraviti pogreške vraćanjem funkcionalnog stanja u trgovini komponenta. To možete učiniti pomoću uslužnog programa za održavanje DISM slike (naredba Dism / Online / Cleanup-Image)ili pomoću Powershell-a (cmdlet Popravak-WindowsImage).
Da biste provjerili stanje u trgovini komponenta, otvorite naredbeni redak s povišenim povlasticama i pokrenite:
Dism / Online / Cleanup-Image / CheckHealth
Savjet.
- DISM, za razliku od većine Windows alata, razlikuje velika i mala slova.
- Naredba Dism / Cleanup-Image sprema zapise u direktorije C: \ Windows \ Logs \ CBS \ CBS.log i C: \ Windows \ Logs \ DISM \ dism.log
Slična Powershell naredba:
Popravak-WindowsImage -Online -CheckHealth
Provjera CheckHealth trajat će nekoliko minuta. Kao što vidite, trenutno stanje pohrane komponenata na slici je Zdravo, tj. nije potreban oporavak.
U slučaju da su pronađeni problemi ili pogreške, trebali biste pokrenuti postupak oporavka pohrane naredbom:
Dism.exe / Online / Cleanup-Image / Restorehealth
Slična Powershell naredba:
Popravak WindowsImage -Online -RestoreHealth
U ovom je primjeru oporavak sistemskih datoteka uspješno:
Operacija vraćanja uspješno je završena. Popravljena je korupcija u trgovini komponentama.U slučaju da sustav sam ne može oporaviti neke komponente u spremištu, možda će vam trebati distribucijski komplet (instalacijski disk) sustava Windows 8. Umetnite ovaj disk u pogon ili montirajte njegov iso image. Pretpostavimo da je slovu pogona dodijeljeno slovo E. Nabavite popis dostupnih verzija sustava Windows 8 na pogonu pomoću naredbe PoSH:
Get-WindowsImage -ImagePath E: \ izvori \ install.wim
U ovom primjeru vidimo da postoji samo jedna slika na disku (Windows 8 Pro) sa indeksom 1 (Index: 1).
Sljedeća naredba započinje oporavak pohrane s oporavkom oštećenih komponenti s izvorne slike sustava Windows 8:
Repair-WindowsImage -Online -RestoreHealth -Source G: \ources \ install.wim: 1
, gdje je 1 indeks verzije slike u raspodjeli dobivenoj ranije.
Nakon što je oporavak dovršen, provjerite je li pohranjivanje komponenata u zdravom stanju (status: zdravo)
Sljedeći (ne uvijek obvezni korak) je provjera integriteta sistemskih datoteka pomoću naredbe:
sfc / scannowvijeće. Ako ste pribjegli oporavku trgovine komponenta zbog problema s instaliranjem ažuriranja sustava Windows, ponovno pokrenite uslugu Windows Update i resetirajte lokalnu predmemoriju ažuriranja. Da biste to učinili, u naredbenom retku izvedite sljedeće naredbe:
net stop wuauserv net stop bitovi neto stop cryptsvc ren% systemroot% \ Software Distribucija oldSD ren% systemroot% \ System32 \ catroot2 oldCat2 neto start bits kriptivc start start bits net start wuauserv