Ошибка 0x80073712 при установке обновлений и компонентов в Windows Server 2016 и Windows 10

Столкнулся с интересной ошибкой 0x80073712 при установке обновлений в Windows Server 2016. Как выяснилось позже, эта ошибка связана с повреждением хранилища компонентов Windows. В этой статье рассмотрим, как исправить хранилище компонентов в Windows 10 / 8.1 и Windows Server 2016/2012 R2 и восстановить работу Windows Update.

При попытке установить обновления в Центре обновления Windows появляется ошибка:

Некоторый файлы обновления отсутствуют или имеются проблемы. Мы попытаемся скачать обновление позже.

Код ошибки: (0x80073712)

Some update files are missing or have problems. We’ll try to download the update.

Error code: (0x80073712)

Windows 10 / Server 2016 ошибка обновления 0x80073712

В первую очередь я попробовал сбросить состояние службы Windows Update и очистить каталог SoftwareDistribution по рекомендациям из статьи “Сброс настроек Центра обновления Windows”, но это не помогло.

С помощью команды dism /online /get-packages я проверил, что все обновления находятся в статусе Installed.

dism /online /get-packages

Если у некоторых обновлений указан Install Pending, вы из можете корректно удалить с помощью команды DISM (используйте ваш Package Identity):

DISM.exe /Online /Remove-Package /PackageName:Package_for_KB4485447~31bf3856ad364e35~amd64~~10.0.1.1 /quiet /norestart

Довольно долго решал, с какой стороны подойди к этой проблеме, но в рамках траблшутинга мне понадобилось установить на Windows Server 2016 компонент .Net Framework 3.5. При установке компонента .Net с помощью DISM появилась характерная ошибка, которая и натолкнула меня на дальнейшие действия:

The request to add or remove features on the specified server failed. Installation of  one or more roles, role services or features failed. The component store has been corrupted. Error: 0x80073712.

Хранилище компонентов повреждено. Ошибка: 0x80073712.

The component store has been corrupted. Error: 0x80073712.

При этом в файле CBS.log можно найти такую строку (%WinDir%\Logs\CBS\CBS.log):

[HRESULT = 0x80073712 - ERROR_SXS_COMPONENT_STORE_CORRUPT]

Как вы видите, по какой-то причине хранилище компонентов вашей системы повреждено, в результате чего Windows Update не может получить данные из манифеста CBS (Component-Based Servicing) необходимые для установки обновлений. Вы можете восстановить хранилище компонентов с помощью встроенного функционала DISM.

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

В первую очередь проверьте состояние хранилища компонентов с помощью команды:

dism /online /cleanup-image /checkhealth

Если после выполнения анализа появилось сообщение “component store is repairable”, вы можете попытаться восстановить хранилище компонентов командой:

dism /online /cleanup-image /restorehealth

В некоторых случаях это достаточно. Но у меня утилита DISM выдала ошибку:

Error: 0x800f0906
The source files could not be downloaded.

В этом случае для восстановления Windows требуется установочный диск с вашим дистрибутивом Windows. Допустим, вы смонтировали ISO файл с вашим дистрибутивом Windows. Теперь нужно проверить список текущих редакций Windows в файле install.wim в подключенном образе (диске):

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

dism /Get-WimInfo /WimFile

В моем случае установлена редакция Windows Server 2016 Standard (Desktop Experience), поэтому в следующей команде я использую ее индекс – 2.

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

Еще раз проверьте состояние хранилища компонентов:

Dism /Online /Cleanup-Image /CheckHealth

DISM должна вернуть: Повреждение хранилища компонентов не обнаружено (No component store corruption detected).

Dism /Online /Cleanup-Image /CheckHealth No component store corruption detected

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


Предыдущая статья Следующая статья


Комментариев: 14 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)