Сброс настроек агента и службы обновлений Windows Update

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

Обычно процесс отладки и дебага ошибок в работе службы обновлений выполняется с помощью анализа данных в логе %windir%\WindowsUpdate.log (в Windows 10 получить файл WindowsUpdate.log можно таким способом).

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

windows update error

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

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

Итак, по порядку о том, что делает скрип:

  1. Останавливаем службы Windows Update (Центр обновлений Windows), BITS и службы криптографии
    net stop bits
    net stop wuauserv
    net stop appidsvc
    net stop cryptsvc
  2. Удаляем служебные файлы qmgr*.dat в каталоге %ALLUSERSPROFILE%\Application Data\Microsoft\Network\Downloader\
    Del "%ALLUSERSPROFILE%\Application Data\Microsoft\Network\Downloader\qmgr*.dat"
  3. Переименовываем служебные каталоги, в которых хранятся конфигурационные файлы и кэш обновлений (в случае необходимости их можно будет использовать как резервные копии). После перезапуска служб, эти каталоги автоматически пересоздадутся:
    Ren %systemroot%\SoftwareDistribution SoftwareDistribution.bak
    Ren %systemroot%\system32\catroot2 catroot2.bak
  4. Удаление старого журнала windowsupdate.log
    del /f /s /q %windir%\windowsupdate.log
  5. Сброс разрешений на службы BITS и Windows Update (в случае, если права на службу были изменены)
    sc.exe sdset bits D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
    sc.exe sdset wuauserv D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
  6. Перерегистрация файлов системных динамических библиотек (dll), связанных со службами BITS и Windows Update
     cd /d %windir%\system32
     regsvr32.exe /U /s vbscript.dll
     regsvr32.exe /U /s mshtml.dll
     regsvr32.exe /U /s msjava.dll
     regsvr32.exe /U /s msxml.dll
     regsvr32.exe /U /s actxprxy.dll
     regsvr32.exe /U /s shdocvw.dll
     regsvr32.exe /U /s Mssip32.dll
     regsvr32.exe /U /s wintrust.dll
     regsvr32.exe /U /s initpki.dll
     regsvr32.exe /U /s dssenh.dll
     regsvr32.exe /U /s rsaenh.dll
     regsvr32.exe /U /s gpkcsp.dll
     regsvr32.exe /U /s sccbase.dll
     regsvr32.exe /U /s slbcsp.dll
     regsvr32.exe /U /s cryptdlg.dll
     regsvr32.exe /U /s Urlmon.dll
     regsvr32.exe /U /s Oleaut32.dll
     regsvr32.exe /U /s msxml2.dll
     regsvr32.exe /U /s Browseui.dll
     regsvr32.exe /U /s shell32.dll
     regsvr32.exe /U /s atl.dll
     regsvr32.exe /U /s jscript.dll
     regsvr32.exe /U /s msxml3.dll
     regsvr32.exe /U /s softpub.dll
     regsvr32.exe /U /s wuapi.dll
     regsvr32.exe /U /s wuaueng.dll
     regsvr32.exe /U /s wuaueng1.dll
     regsvr32.exe /U /s wucltui.dll
     regsvr32.exe /U /s wups.dll
     regsvr32.exe /U /s wups2.dll
     regsvr32.exe /U /s wuweb.dll
     regsvr32.exe /U /s scrrun.dll
     regsvr32.exe /U /s msxml6.dll
     regsvr32.exe /U /s ole32.dll
     regsvr32.exe /U /s qmgr.dll
     regsvr32.exe /U /s qmgrprxy.dll
     regsvr32.exe /U /s wucltux.dll
     regsvr32.exe /U /s muweb.dll
     regsvr32.exe /U /s wuwebv.dll
     regsvr32.exe /s vbscript.dll
     regsvr32.exe /s mshtml.dll
     regsvr32.exe /s msjava.dll
     regsvr32.exe /s msxml.dll
     regsvr32.exe /s actxprxy.dll
     regsvr32.exe /s shdocvw.dll
     regsvr32.exe /s Mssip32.dll
     regsvr32.exe /s wintrust.dll
     regsvr32.exe /s initpki.dll
     regsvr32.exe /s dssenh.dll
     regsvr32.exe /s rsaenh.dll
     regsvr32.exe /s gpkcsp.dll
     regsvr32.exe /s sccbase.dll
     regsvr32.exe /s slbcsp.dll
     regsvr32.exe /s cryptdlg.dll
     regsvr32.exe /s Urlmon.dll
     regsvr32.exe /s Oleaut32.dll
     regsvr32.exe /s msxml2.dll
     regsvr32.exe /s Browseui.dll
     regsvr32.exe /s shell32.dll
     regsvr32.exe /s Mssip32.dll
     regsvr32.exe /s atl.dll
     regsvr32.exe /s jscript.dll
     regsvr32.exe /s msxml3.dll
     regsvr32.exe /s softpub.dll
     regsvr32.exe /s wuapi.dll
     regsvr32.exe /s wuaueng.dll
     regsvr32.exe /s wuaueng1.dll
     regsvr32.exe /s wucltui.dll
     regsvr32.exe /s wups.dll
     regsvr32.exe /s wups2.dll
     regsvr32.exe /s wuweb.dll
     regsvr32.exe /s scrrun.dll
     regsvr32.exe /s msxml6.dll
     regsvr32.exe /s ole32.dll
     regsvr32.exe /s qmgr.dll
     regsvr32.exe /s qmgrprxy.dll
     regsvr32.exe /s wucltux.dll
     regsvr32.exe /s muweb.dll
     regsvr32.exe /s wuwebv.dll
  7. Сброс параметров системного прокси netsh winhttp reset proxy
  8. Опционально. При использовании локального сервера WSUS, возможно дополнительно сбросить текущую привязку клиента к серверу WSUS путем удаления следующих параметров в ветке HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate
    REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v AccountDomainSid /f
    REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v PingID /f
    REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate" /v SusClientId /f
    REG DELETE "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v TargetGroup /f
    REG DELETE "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v WUServer /f
    REG DELETE "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v WUStatusServer /f
  9. Запуск остановленных служб
    net start bits
    net start wuauserv
    net start appidsvc
    net start cryptsvc
  10. Опционально. В некоторых случая требуется установить/переустановить последнею версию агента Windows Update Agent (WUA). Скачать актуальную версию агента можно со страницы https://support.microsoft.com/en-us/kb/949104. Нужно скачать файл для вашей версии Windows.Скачать последнюю версию агента Windows UpdateАктуальная версия агента WUA для Windows 7 SP1 x64 — 7.6. Принудительная переустановка выполняется следующими командами:Для x32 версий Windows 7WindowsUpdateAgent-7.6-x86.exe /quiet /norestart /wuforce

    для x64 версий Windows 7

    WindowsUpdateAgent-7.6-x64.exe /quiet /norestart /wuforce
    Совет. Текущую версию агента Windows Update Agent (WUA) можно узнать в свойствах файла %windir%\system32\Wuaueng.dll. В нашем примере это 7.6.7600.256 (последняя).Как узнать версию агента WUA (библиотека Wuaueng.dll)

Осталось перезагрузить компьютер и запустить синхронизацию с сервером Windows Update /WSUS.

wuauclt /resetauthorization /detectnow

Затем зайдите в Центр обновления и проверьте, пропали ли проблемы при поиске, скачивании и установке обновлений.

Сам скрипт reset_win_update.bat можно скачать по ссылке reset_win_update.zip (пункты 9 и 11 в скрипте не выполняются, т.к. являются опциональными). Скрипт нужно скачать, распаковать и запустить с правами администратора. run-as-admin

Если обновления начали корректно скачиваться и устанавливается, можно удалить папки резервные копии папок:

Ren %systemroot%\SoftwareDistribution SoftwareDistribution.bak
Ren %systemroot%\system32\catroot2 catroot2.bak
 

Добавить комментарий


Защитный код
Обновить