Как исправить ошибки при установке обновлений Windows с помощью встроенного восстановления компонентов.

В преддверии поступления Windows 8 в продажу Microsoft выпустила большое кумулятивное обновление KB2756872 , чего никогда раньше не делала для клиентских операционных систем. Однако при установке обновления меня ждал неприятный сюрприз — ошибка 80073712.

Сегодня я расскажу о том, как победить эту и ряд других ошибок при установке обновлений Windows с помощью новой возможности обслуживания – встроенного восстановления компонентов (in-box corruption repair).

Эта запись открывает серию статей о нововведениях в обслуживании Windows. И нет, оно не имеет ничего общего с автоматическим обслуживанием с помощью планировщика. Сначала я покажу, как решил проблему с установкой обновления, а потом расскажу о технологии.

Сегодня в программе

Устранение ошибок Windows Update, вызванных повреждением хранилища компонентов

В справке предыдущих ОС Microsoft для ошибки 80073712 есть описание , из которого следует, что причиной является повреждение хранилища компонентов. Для Windows Vista и Windows 7 была выпущена утилита System Update Readiness Tool (CheckSUR), призванная устранить целый ряд ошибок Windows Update.

80070002 ERROR_FILE_NOT_FOUND 8007000D ERROR_INVALID_DATA 800F081F CBS_E_SOURCE_MISSING 80073712 ERROR_SXS_COMPONENT_STORE_CORRUPT 800736CC ERROR_SXS_FILE_HASH_MISMATCH 800705B9 ERROR_XML_PARSE_ERROR 80070246 ERROR_ILLEGAL_CHARACTER 8007370D ERROR_SXS_IDENTITY_PARSE_ERROR 8007370B ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME 8007370A ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE 80070057 ERROR_INVALID_PARAMETER 800B0100 TRUST_E_NOSIGNATURE 80092003 CRYPT_E_FILE_ERROR 800B0101 CERT_E_EXPIRED 8007371B ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE 80070490 ERROR_NOT_FOUND

Для исправления этих ошибок в Windows 8 и более новых ОС утилита CheckSUR не нужна, потому что все необходимое уже встроено в систему! Вы можете восстановить поврежденные компоненты с помощью командлета PowerShell (рекомендуемый способ) или утилиты DISM.exe.

Upd. 28-Jul-2015 . Microsoft выпустила специальное обновление , которое привносит в Windows 7 возможность встроенного восстановления компонентов по аналогии с Windows 8+.

Этап 1 – восстановление поврежденного хранилища компонентов

Восстановление можно выполнить без установочного диска Windows, но в некоторых случаях он может вам понадобиться.

Восстановление без установочного диска

В этом случае используются файлы хранилища на локальном диске и Windows Update.

Состояние хранилища компонентов обозначается параметром Image Health State . У него Healthy означает, что с хранилищем компонентов все нормально. Для дальнейшей диагностики переходите к проверке целостности системных файлов чуть ниже ↓ Если же повреждение хранилища не исправлено, нужно попробовать сделать это с помощью установочного диска.

Восстановление с помощью установочного диска

Когда системе не удается восстановить какие-либо компоненты, вам может помочь оригинальный установочный диск.

  1. Щелкните правой кнопкой мыши по ISO-образу и выберите в меню Подключить . Обратите внимание на букву диска, которую получил подключенный образ.
  2. В PowerShell выполните команду: Repair-WindowsImage -Online -RestoreHealth -Source:WIM:Е:\sources\install.wim:1

    Здесь буква «E» соответствует букве подключенного образа, а цифра «1» — индексу издания в образе (в примере используется образ Windows 8 Enterprise с единственным изданием).

  3. По окончании процедуры убедитесь, что хранилище компонентов в порядке (Healthy).

Этап 2 – проверка целостности системных файлов

Строго говоря, этот этап не имеет отношения к восстановлению компонентов. Однако техническая поддержка Microsoft рекомендует после проверки целостности хранилища компонентов также проверить и целостность системных файлов. Для этого в командной строке, запущенной от имени администратора, выполните команду:

Sfc /scannow

У меня один из файлов был поврежден, и утилита SFC успешно восстановила его.

Случаи, когда системе не удалось восстановить какие-либо файлы, выходят за рамки этой статьи (я разберу их в другой раз).

Этап 3 – установка обновления

Итак, две команды восстановили целостность хранилища компонентов и системных файлов. Самое время попробовать установить обновление заново.

Как видите, на сей раз у меня все сработало!

Что такое обслуживание Windows и зачем оно нужно

Преимущества встроенного восстановления компонентов Windows

Давайте сравним ключевые моменты восстановления компонентов в разных операционных системах.

Windows Vista и Windows 7

Цель проверки (работающая система и образы)

Целью проверки может являться как установленная система, так и образ в формате WIM или VHD.

Проверяет работающую систему.

Проверяет подключенный автономный образ по указанному после параметра пути.

Проверка и восстановление хранилища

Для определения состояния и восстановления компонентов в командлете Repair-WindowsImage предусмотрены три параметра, выполняющих проверку хранилища. Результатом сканирования может быть:

  • отсутствие повреждений (Healthy)
  • наличие повреждений, которые можно восстановить (Repairable)
  • наличие повреждений, которые нельзя восстановить (Not repairable)

Однако функции параметров отличаются.

-CheckHealth

Моментально проверяет, присутствует ли в системном реестре маркер, обозначающий повреждение. Этот маркер может появиться в процессе работы системы обслуживания.

-ScanHealth

Проверяет хранилище на предмет повреждений. Эта операция занимает больше времени, чем простая проверка маркера.

-RestoreHealth

Проверяет хранилище на предмет повреждений и выполняет их восстановление. Эта операция является самой длительной из трех.

Источник компонентов для восстановления

Чтобы восстановить компоненты, их нужно откуда-то взять. Когда источник не указан , при проверке автоматически используется локальное хранилище компонентов и Windows Update.

Этот момент нигде не задокументирован, и вы должны понимать, что при проверке автономного образа Windows из-под другого издания или версии Windows источник нужно указывать обязательно.

В обоих случаях вы можете указывать более одного источника и даже блокировать Windows Update при этом. Приведенные ниже параметры предназначены только для восстановления, и поэтому допустимы только в связке с -RestoreHealth .

В качестве источника можно использовать путь к:

  • работающей системе, к которой имеется доступ по сети
  • автономному образу, причем его предварительное подключение необязательно

Здесь любопытна возможность указать путь непосредственно к изданию в WIM-образе без его предварительного копирования на локальный диск и последующего подключения. Она является тайным знанием, пока не отраженным в документации;) Это работает благодаря функции автоматического подключения WIM, реализованной на последних стадиях разработки Windows 8.

Вы можете перечислить несколько путей через запятую. Дополнительные источники задействуются только в том случае, если в предыдущих не нашлось подходящих компонентов.

Когда в качестве источника используется WIM-образ, необходимо указать тип образа и его индекс:

Source:WIM:Е:\sources\install.wim:1

-LimitAccess

Блокирует доступ к Windows Update во время проверки.

Примеры команд PowerShell

Я приведу несколько примеров практического использования командлета Repair-WindowsImage с разными целями и источниками проверки. Первые два вы уже видели в начале статьи.

Восстановление хранилища работающей системы, используя локальные файлы и Windows Update в качестве источника:

Repair-WindowsImage -Online -RestoreHealth

Восстановление хранилища работающей системы, используя Windows Update и WIM-образ в качестве источников:

Repair-WindowsImage -Online -RestoreHealth -Source:WIM:Е:\sources\install.wim:1

Проверка хранилища автономного VHD-образа. Сначала он подключается в папку C:\mount (это происходит очень быстро), а затем выполняется проверка.

Mount-Windowsimage -ImagePath C:\vhd\Win8.vhd -Index 1 -Path C:\mount Repair-WindowsImage -Path C:\mount -ScanHealth

Восстановление хранилища автономного VHD-образа, используя в качестве источника WIM-образ. Сначала VHD подключается в папку, затем выполняется восстановление образа, после чего VHD отключается с сохранением изменений.

Mount-Windowsimage -ImagePath C:\vhd\Win8.vhd -Index 1 -Path C:\mount Repair-WindowsImage -Path C:\mount -RestoreHealth -Source:WIM:Е:\sources\install.wim:1 Dismount-WindowsImage -path C:\mount -Save

Результаты проверки и восстановления

Помимо результатов в консоли вы можете найти подробный отчет ближе к концу файла %WinDir%\Logs\DISM\dism.log

В первой половине приведенного фрагмента видны конкретные компоненты и результат их восстановления (успех или неудача), а во второй – сводка об операции, включая время ее выполнения.

Checking System Update Readiness. (p) CSI Manifest Corrupt (Fixed) amd64_microsoft-windows-lpksetup_31bf3856ad364e35_6.2.9200.16384_none_7a23086df63cad13 (p) CSI Manifest Corrupt (Fixed) amd64_microsoft-windows-l..oyment-languagepack_31bf3856ad364e35_6.2.9200.16384_ru-ru_2422e0b40b0ac235 (p) CSI Manifest Corrupt (Fixed) amd64_microsoft-windows-l..oyment-languagepack_31bf3856ad364e35_6.2.9200.16384_ru-ru_2a982e5d65c9a294 (p) CSI Manifest Corrupt (Fixed) amd64_microsoft-windows-l..oyment-languagepack_31bf3856ad364e35_6.2.9200.16384_ru-ru_53ea2a36610cb913 (p) CSI Manifest Corrupt (Fixed) amd64_microsoft-windows-l..oyment-languagepack_31bf3856ad364e35_6.2.9200.16384_ru-ru_879ccd7f3842e229 (p) CSI Manifest Corrupt (Fixed) amd64_microsoft-windows-l..oyment-languagepack_31bf3856ad364e35_6.2.9200.16384_ru-ru_8e2bd9e9b9aeac5f (p) CSI Manifest Corrupt (Fixed) amd64_microsoft-windows-l..oyment-languagepack_31bf3856ad364e35_6.2.9200.16384_ru-ru_c73545896a8993dd Summary: Operation: Detect and Repair Operation result: 0x0 Last Successful Step: Entire operation completes. Total Detected Corruption: 7 CBS Manifest Corruption: 0 CBS Metadata Corruption: 0 CSI Manifest Corruption: 7 CSI Metadata Corruption: 0 CSI Payload Corruption: 0 Total Repaired Corruption: 7 CBS Manifest Repaired: 0 CSI Manifest Repaired: 7 CSI Payload Repaired: 0 CSI Store Metadata refreshed: True Total Operation Time: 221 seconds.

Как видите, у меня были повреждены 7 манифестов, относящихся языковому пакету, что и стало препятствием к установке обновления Windows. Все повреждения были исправлены.

Безусловно, этот материал не подразумевает моментального практического применения, хотя проверить состояние хранилища компонентов Windows вы можете прямо сейчас. Более того, за три года работы в Windows 7 у меня ни разу не возникало проблем с установкой обновлений.

Однако ошибки Windows Update, связанные с повреждением хранилища, вовсе не редкость, даже если судить только по форуму OSZone. Поэтому важно знать, как бороться с ними.

Мне показалось, что часть аудитории блога откровенно заскучала от серии статей о современном интерфейсе Windows 8 и приложений. Конечно, там все примитивно, никаких технических тонкостей, а главное – у некоторых людей создается ощущение, что кроме Modern UI в Windows 8 нет ничего нового. Это не так…

Я давно планировал серию записей об изменениях в обслуживании Windows, а возникшая проблема с установкой обновления лишь форсировала публикацию, заодно вынудив меня изменить порядок статей в серии.

Вам хватило технических тонкостей сегодня? ;)

Если нет, в следующей записи из этой серии вас ждет не только экскурс в историю инструментов обслуживания ОС Microsoft, но и уникальная возможность попробовать себя в роли г-сборщика Windows! Но до этого в блоге появятся записи на другие темы.

Здравствуйте, дорогие читатели и это снова я Тришкин Денис.

Опция появилась еще несколько лет назад, когда вышло обновление KB2966583. В операционной системе седьмой версии от Microsoft предусмотрено несколько так называемых хранилищ – для компонентов и пакетов. Они расположены в папке Windows в каталогах WinSxS и Packages соответственно.

После обновления системы раньше нередко можно было наблюдать некоторые сбои в работе из-за повреждения одного или сразу двух хранилищ. И как раз вышеописанная утилита позволяет исправить такие неполадки. Ранее это можно было сделать только с помощью отдельно предусмотренной утилиты CheckSUR.

Включение ( )

Итак, как запустить нужный нам программный модуль? Как обычно, все просто:

Результат о проделанной работе можно просмотреть по адресу: «Системный диск:\Windows\Logs\CBS ». Нас интересует файл «checksur.log ».

Если в документе вы увидите множество проблем с системными компонентами – пора задумываться о переустановке операционной системы. Возможно, стоит даже обратить внимание на более новые версии. Детально об установке Windows 8.1 можно узнать, перейдя по .

Существует ли еще метод, как восстановить системные файлы? Кроме того, что можно заново разместить на своем компьютере операционку, предусмотрен и другой вариант. Нужно просто скачать соответствующий набор инструментов System Update Readiness Tool.

Кроме того, в «Командной строке » вместо «ScanHealth » нужно указать «». Запуститься соответствующий инструмент, который поможет убрать ошибки, но к сожалению этот инструмент работает только на windows 8 и выше.

В идеале в открывшемся файле должен быть написан текст: «No errors detected ». Это означает, что в системе проблем не обнаружено, а значит – все хорошо.

Ошибка запуска ( )

Иногда пользователи могут столкнуться с проблемой, когда при старте инструмента появляется «», сообщающая о «неизвестном параметре ». Не стоит сразу паниковать – в некоторых ситуациях такое поведение говорит просто о неправильном написании команды. Так, перед каждым знаком «/ » обязательно должен стоят пробел.

Правда случаются ситуации, когда вышеописанная ошибка указывает на то, что единственным выходом будет переустановка ОС. В любом случае лучше иметь у себя дежурный диск или флешку со всем нужным дистрибутивом. Это поможет в течении кротчайшего времени вернуть работоспособность оборудования.

Очистка WinSxS ( )

Кроме вышеописанных, инструмент DISM обладает и еще одной полезной функцией – очистка системной папки WinSxS. Конечно же, это можно сделать с помощью специальных программ. Но раз мы уже заговорили об этом, я считаю, что пользователи должны знать всю возможную информацию.

Итак, чтобы убрать лишние данные из папки, необходимо опять же запустить «Командную строку », прописать, что указывалось выше, только вместо последней фразы, разместить «». Через время, каталог будет очищен от лишних данных. Опять же эта команда работает только на windows 8 и выше.

Более или менее продвинутые пользователи нередко пользуются командной строкой, ведь через неё можно влиять на большинство системных процессов. При использовании строки DISM, которая есть в седьмой и следующих версиях Windows, время от времени могут появляться сообщения об ошибке.

Это норма для любой программы, но наша задача - избавиться от неполадки, чтобы выполнить необходимую команду. Ошибка 87 DISM возникает по нескольким причинам, и в каждом случае есть свои пути её устранения.

Иногда пользователи могут столкнуться с ошибкой 87 в строке DISM

Давайте выясним, при каких обстоятельствах обычно появляется такое сообщение и как избавиться от него без посторонней помощи.

С чем связана ошибка 87?

Как правило, она напрямую относится к любым действиям, выполняемым с директорией WinSxS. Если вдруг в Windows пропадёт любой системный файл, он тут же будет восстановлен рабочей копией из этой папки. То есть, WinSxS это очень важная папка с документами.

И вот ошибка 87 возникает в тот момент, когда пользователь пытается проделать какие-то операции с папкой через DISM. А теперь давайте конкретнее рассмотрим ситуации, когда возникает эта неполадка, чтобы в зависимости от них узнать способы избавления от неё.

Ошибка 87 при проверке целостности системных файлов

Поэтому чтобы немного сэкономить место, можно удалить бэкап папки таким образом:

  • Открывается DISM.
  • Вводиться текст dism /online /cleanup-image /spsuperseded /hidesp.

Часто именно после этой команды выбивает ошибку 87 с таким текстом: «Параметр spsuperseded не распознан в этом контексте».

Что делать в таком случае? Проверьте работоспособность сервиса «Установщик модулей Windows». Если он нерабочий, установите его, запустите, и затем повторите вышеуказанные действия.

Если же это не помогло, значит, команда для удаления бэкапа уже выполнялась, и больше места вы сэкономить не сможете.

Теперь вы знаете, по каким причинам появляется ошибка 87 в командной строке Windows, и знаете, что делать для её исчезновения. Советуем быть аккуратными при пользовании подобными программами и внимательно следить за тем, в какие процессы вы вмешиваетесь, чтобы не навредить компьютеру.

В преддверии поступления Windows 8 в продажу Microsoft выпустила большое кумулятивное обновление KB2756872 , чего никогда раньше не делала для клиентских операционных систем. Однако при установке обновления меня ждал неприятный сюрприз — ошибка 80073712 .

Сегодня я расскажу о том, как победить эту и ряд других ошибок при установке обновлений Windows 8 с помощью новой возможности обслуживания - встроенного восстановления компонентов (in-box corruption repair).

Эта запись открывает серию статей о нововведениях в обслуживании Windows 8. И нет, оно не имеет ничего общего с автоматическим обслуживанием с помощью планировщика. Сначала я покажу, как решил проблему с установкой обновления,а потом расскажу о технологии.

Устранение ошибок Windows Update, вызванных повреждением хранилища компонентов

В справке предыдущих ОС Microsoft для ошибки 80073712 есть описание , из которого следует, что причиной является повреждение хранилища компонентов. Для Windows Vista и Windows 7 была выпущена утилита System Update Readiness Tool (CheckSUR), призванная устранить целый ряд ошибок Windows Update

Список ошибок

80070002 ERROR_FILE_NOT_FOUND
8007000D ERROR_INVALID_DATA
800F081F CBS_E_SOURCE_MISSING
80073712 ERROR_SXS_COMPONENT_STORE_CORRUPT
800736CC ERROR_SXS_FILE_HASH_MISMATCH
800705B9 ERROR_XML_PARSE_ERROR
80070246 ERROR_ILLEGAL_CHARACTER
8007370D ERROR_SXS_IDENTITY_PARSE_ERROR
8007370B ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_NAME
8007370A ERROR_SXS_INVALID_IDENTITY_ATTRIBUTE_VALUE
80070057 ERROR_INVALID_PARAMETER
800B0100 TRUST_E_NOSIGNATURE
80092003 CRYPT_E_FILE_ERROR
800B0101 CERT_E_EXPIRED
8007371B ERROR_SXS_TRANSACTION_CLOSURE_INCOMPLETE
80070490 ERROR_NOT_FOUND

Для исправления этих ошибок в Windows 8 утилита CheckSUR не нужна, потому что все необходимое уже встроено в систему! Вы можете восстановить поврежденные компоненты с помощью командлета PowerShell (рекомендуемый способ) или утилиты DISM.exe

Этап 1 - восстановление поврежденного хранилища компонентов

Восстановление можно выполнить без установочного диска Windows 8, но в некоторых случаях он может вам понадобиться.

Восстановление без установочного диска

В этом случае используются файлы хранилища на локальном диске и Windows Update.


Редактирование реестра Windows вручную с целью удаления содержащих ошибки ключей Ошибка 3017 не рекомендуется, если вы не являетесь специалистом по обслуживанию ПК. Ошибки, допущенные при редактировании реестра, могут привести к неработоспособности вашего ПК и нанести непоправимый ущерб вашей операционной системе. На самом деле, даже одна запятая, поставленная не в том месте, может воспрепятствовать загрузке компьютера!

В связи с подобным риском мы настоятельно рекомендуем использовать надежные инструменты очистки реестра, такие как WinThruster [Загрузить] (разработанный Microsoft Gold Certified Partner), чтобы просканировать и исправить любые проблемы, связанные с Ошибка 3017. Используя очистку реестра [Загрузить] , вы сможете автоматизировать процесс поиска поврежденных записей реестра, ссылок на отсутствующие файлы (например, вызывающих ошибку %%error_name%%) и нерабочих ссылок внутри реестра. Перед каждым сканированием автоматически создается резервная копия, позволяющая отменить любые изменения одним кликом и защищающая вас от возможного повреждения компьютера. Самое приятное, что устранение ошибок реестра [Загрузить] может резко повысить скорость и производительность системы.


Предупреждение: Если вы не являетесь опытным пользователем ПК, мы НЕ рекомендуем редактирование реестра Windows вручную. Некорректное использование Редактора реестра может привести к серьезным проблемам и потребовать переустановки Windows. Мы не гарантируем, что неполадки, являющиеся результатом неправильного использования Редактора реестра, могут быть устранены. Вы пользуетесь Редактором реестра на свой страх и риск.

Перед тем, как вручную восстанавливать реестр Windows, необходимо создать резервную копию, экспортировав часть реестра, связанную с Ошибка 3017 (например, Microsoft Access):

  1. Нажмите на кнопку Начать .
  2. Введите "command " в строке поиска... ПОКА НЕ НАЖИМАЙТЕ ENTER !
  3. Удерживая клавиши CTRL-Shift на клавиатуре, нажмите ENTER .
  4. Будет выведено диалоговое окно для доступа.
  5. Нажмите Да .
  6. Черный ящик открывается мигающим курсором.
  7. Введите "regedit " и нажмите ENTER .
  8. В Редакторе реестра выберите ключ, связанный с Ошибка 3017 (например, Microsoft Access), для которого требуется создать резервную копию.
  9. В меню Файл выберите Экспорт .
  10. В списке Сохранить в выберите папку, в которую вы хотите сохранить резервную копию ключа Microsoft Access.
  11. В поле Имя файла введите название файла резервной копии, например "Microsoft Access резервная копия".
  12. Убедитесь, что в поле Диапазон экспорта выбрано значение Выбранная ветвь .
  13. Нажмите Сохранить .
  14. Файл будет сохранен с расширением.reg .
  15. Теперь у вас есть резервная копия записи реестра, связанной с Microsoft Access.

Следующие шаги при ручном редактировании реестра не будут описаны в данной статье, так как с большой вероятностью могут привести к повреждению вашей системы. Если вы хотите получить больше информации о редактировании реестра вручную, пожалуйста, ознакомьтесь со ссылками ниже.