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

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

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

Средство устранения неполадок Центра обновления Windows

Прежде чем перейти к сбросу конфигурации центра обновления Windows, рекомендуем сначала попробовать встроенное средство для автоматического исправления проблем в службе обновления Windows – средство устранения неполадок Центра обновления Windows (Windows Update Troubleshooter).

В Windows 10 и 11 запустить утилиту диагностики Windows Update можно из панели Settings или с помощью команды:

msdt.exe /id WindowsUpdateDiagnostic

Для предыдущих версий Windows его придется скачать вручную по ссылкам ниже:

  • Windows 11: Settings -> System -> Troubleshooter -> Other Troubleshooter -> Windows Update
  • Windows 10 – скачайте wu10.diagcab по ссылке https://aka.ms/wudiag , либо запустите локальную версию инструмента: Пуск -> Параметры -> Обновления и безопасность -> Устранение неполадок -> Центр обновлений Windows (Start -> Settings -> Updates and Security -> Troubleshoot -> Additional Troubleshooters-> Windows Updates – resolve problems that prevent you from updating windows).
    Для быстрого доступа к средствам исправления неполадок Windows можно использовать команду ms-settings: ms-settings:troubleshoot
  • Windows 7 и Windows 8.1
  • WindowsUpdate.diagcab (https://aka.ms/diag_wu). В связи с тем, что это версии ОС не поддерживаются, Microsoft удалила утилиту с сайта. Но вы все еще можете скачать ее через веб-архив.

Дождитесь пока средство устранения неполадок Центра обновления Windows выполнит сканирование и попытается автоматически исправить найденные ошибки в службе Windows Update и связанных компонентах.

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

Сброс настроек Windows Update с помощью PowerShell

Для сброса настроек агента и службы Windows Update можно использовать PowerShell модуль PSWindowsUpdate.

Установите модуль на свой компьютер из галереи скриптов PSGallery:

Install-Module -Name PSWindowsUpdate

Разрешите запуск PowerShell скриптов в текущей сессии:

Set-ExecutionPolicy –ExecutionPolicy RemoteSigned -force -Scope Process

Затем нужно импортировать модуль в сессию:
Import-Module PSWindowsUpdate 

Для сброса компонентов Windows Update, выполните команду:

Reset-WUComponents –verbose

Команда Reset-WUComponents отключает службы, используемые Центром обновлений Windows, перерегистрирует dll, очищает каталог C:WindowsSoftwareDistribution и пересоздает базу данных Windows Update (выполняет все те же операции, что описанный чуть BAT скрипт).

VERBOSE: Background Intelligent Transfer Service (BITS) VERBOSE: Windows Update (wuauserv) VERBOSE: Application Identity (appidsvc) VERBOSE: Cryptographic Services (cryptsvc)  
Step 2: Delete the qmgr*.dat files Step 3: Backup software distribution folders VERBOSE: Renaming Software Distribution folder to C:WindowsSoftwareDistribution.bak VERBOSE: Renaming CatRoot  folder to C:WindowsSystem32Catroot2.bak Step 4: Remove old Windows Update logs VERBOSE: Deleting the C:WindowsWindowsUpdate.log files. Step 5: Reset Windows Update services VERBOSE: Reset BITS service VERBOSE: Reset Windows Update service Step 6: Reregister dll's VERBOSE: regsvr32.exe / s atl.dll VERBOSE: regsvr32.exe / s urlmon.dll VERBOSE: regsvr32.exe / s mshtml.dll VERBOSE: regsvr32.exe / s shdocvw.dll VERBOSE: regsvr32.exe / s browseui.dll VERBOSE: regsvr32.exe / s jscript.dll VERBOSE: regsvr32.exe / s vbscript.dll VERBOSE: regsvr32.exe / s scrrun.dll VERBOSE: regsvr32.exe / s msxml.dll VERBOSE: regsvr32.exe / s msxml3.dll VERBOSE: regsvr32.exe / s msxml6.dll VERBOSE: regsvr32.exe / s actxprxy.dll
VERBOSE: regsvr32.exe / s softpub.dll VERBOSE: regsvr32.exe / s wintrust.dll VERBOSE: regsvr32.exe / s dssenh.dll VERBOSE: regsvr32.exe / s rsaenh.dll VERBOSE: regsvr32.exe / s gpkcsp.dll VERBOSE: regsvr32.exe / s sccbase.dll VERBOSE: regsvr32.exe / s slbcsp.dll VERBOSE: regsvr32.exe / s cryptdlg.dll VERBOSE: regsvr32.exe / s oleaut32.dll VERBOSE: regsvr32.exe / s ole32.dll VERBOSE: regsvr32.exe / s shell32.dll VERBOSE: regsvr32.exe / s initpki.dll VERBOSE: regsvr32.exe / s wuapi.dll VERBOSE: regsvr32.exe / s wuaueng.dll VERBOSE: regsvr32.exe / s wuaueng1.dll VERBOSE: regsvr32.exe / s wucltui.dll VERBOSE: regsvr32.exe / s wups.dll VERBOSE: regsvr32.exe / s wups2.dll VERBOSE: regsvr32.exe / s wuweb.dll VERBOSE: regsvr32.exe / s qmgr.dll VERBOSE: regsvr32.exe / s qmgrprxy.dll VERBOSE: regsvr32.exe / s wucltux.dll VERBOSE: regsvr32.exe / s muweb.dll VERBOSE: regsvr32.exe / s wuwebv.dll Step 7: Reset WinSock VERBOSE: netsh winsock reset Step 8: Reset Proxy VERBOSE: netsh winhttp reset proxy Step 9: Start Windows Update services VERBOSE: Cryptographic Services (cryptsvc) VERBOSE: Application Identity (appidsvc) VERBOSE: Windows Update (wuauserv) VERBOSE: Background Intelligent Transfer Service (BITS) Step 10: Start Windows Update services VERBOSE: wuauclt /resetauthorization /detectnow

Запустите поиск обновлений из панели управления или выполните поиск доступных обновлений с помощью команды PowerShell:

Get-WUList

Утилита Reset Windows Update Tool

Для сброса настроек Windows Update можно использовать стороннюю утилиту Reset Windows Update Tool (wureset). Изначально этот скрипт был доступен на TechNet, но в дальнейшем репозиторий был перенесен на GitHub (https://github.com/wureset-tools/script-wureset).

Перейдите в раздел Releases и скачайте архив с последней версий скрипта. В моем случае это v10.5.5 (2023-03-24).

Извлеките из архив файл wureset.bat. Это и есть BAT скрипт для сброса настроек Windows Update. Запустите его с правами администратора.

Скрипт определит версию Windows и представит список из 20 опций. Некоторые из них напрямую не относятся к сбросу настроек агента WU, но могут быть полезны для исправления различных неисправностей в Windows (проверка диска chkdsk, исправление ошибок в образе Windows с помощью DISM, сброс Winsock, очистка временных файлов и т.д.);

Для сброса компонентов Центра обновлений Windows нужно выбрать опцию (2 — Resets the Windows Update Components): нажмите 2 и Enter.

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

Вы можете самостоятельно посмотреть, что делает скрипт, открыв в файл wureset.bat в любом текстовом редакторе и изучив его содержимое. Например, опция 2 отправляет на процедуру components.

Например, опция 2 отправляет на процедуру components.

После окончания работы скрипта Reset Windows Update Agent перезагрузите компьютер и проверьте работу службы обновлений.

Скрипт wureset.bat универсальный и подходит для всех версий Windows: начиная с Windows 7 и вплоть до Windows 11 и Windows Server 2025.

Восстановление исходных настроек Windows Update из командной строки

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

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

Убедитесь, что настройки Windows Update на вашем компьютере не задаются с помощью доменных или локальных политик. Для вывода результирующих настроек GPO можно воспользоваться утилитой gpresult или rsop.msc. Можно сбросить настройки локальной GPO по этой инструкции.

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

  1. Остановить службы Windows Update (Центр обновлений Windows), BITS и службы криптографии:
    net stop bits
    net stop wuauserv
    net stop appidsvc
    net stop cryptsvc
    taskkill /im wuauclt.exe /f
    Если на компьютере отсутствует (удалена) служба Windows Update, ее можно восстановить, импортировав настройки реестра с другого компьютера.
  2. Удалить служебных файлы qmgr*.dat в каталоге %ALLUSERSPROFILE%Application DataMicrosoftNetworkDownloader:
    Del "%ALLUSERSPROFILE%Application DataMicrosoftNetworkDownloaderqmgr*.dat"
  3. Переименовать служебные каталоги, в которых хранятся конфигурационные файлы и кэш обновлений (в случае необходимости их можно будет использовать как резервные копии). После перезапуска службы обновления, эти каталоги автоматически пересоздадутся:
    Ren %systemroot%SoftwareDistribution SoftwareDistribution.bak
    Ren %systemroot%system32catroot2 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)
    sc.exe sdset cryptsvc D:(A;;CCLCSWLOCRRC;;;AU)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCDCLCSWRPWPDTLCRSDRCWDWO;;;SO)(A;;CCLCSWRPWPDTLOCRRC;;;SY)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;WD)
    sc.exe sdset trustedinstaller D:(A;;CCLCSWLOCRRC;;;AU)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCDCLCSWRPWPDTLCRSDRCWDWO;;;SO)(A;;CCLCSWRPWPDTLOCRRC;;;SY)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;WD)
  6. Перерегистрация файлов системных динамических библиотек (dll), связанных со службами BITS и Windows Update:
    cd /d %windir%system32
    regsvr32.exe /s atl.dll
    regsvr32.exe /s urlmon.dll
    regsvr32.exe /s mshtml.dll
    regsvr32.exe /s shdocvw.dll
    regsvr32.exe /s browseui.dll
    regsvr32.exe /s jscript.dll
    regsvr32.exe /s vbscript.dll
    regsvr32.exe /s scrrun.dll
    regsvr32.exe /s msxml.dll
    regsvr32.exe /s msxml3.dll
    regsvr32.exe /s msxml6.dll
    regsvr32.exe /s actxprxy.dll
    regsvr32.exe /s softpub.dll
    regsvr32.exe /s wintrust.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 oleaut32.dll
    regsvr32.exe /s ole32.dll
    regsvr32.exe /s shell32.dll
    regsvr32.exe /s initpki.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 qmgr.dll
    regsvr32.exe /s qmgrprxy.dll
    regsvr32.exe /s wucltux.dll
    regsvr32.exe /s muweb.dll
    regsvr32.exe /s wuwebv.dll
  7. Сброс параметров Winsock netsh winsock reset
  8. Сброс параметров системного прокси netsh winhttp reset proxy
  9. Сбросить настройки Windows Update, заданные через GPO, а также текущую привязку клиента к локальному серверу обновлений WSUS, удалив параметры в ветке реестра HKLMSOFTWAREMicrosoftWindowsCurrentVersionWindowsUpdate:
    REG DELETE "HKLMSOFTWAREMicrosoftWindowsCurrentVersionWindowsUpdate" /v AccountDomainSid /f
    REG DELETE "HKLMSOFTWAREMicrosoftWindowsCurrentVersionWindowsUpdate" /v PingID /f
    REG DELETE "HKLMSOFTWAREMicrosoftWindowsCurrentVersionWindowsUpdate" /v SusClientId /f
    REG DELETE "HKLMSOFTWAREPoliciesMicrosoftWindowsWindowsUpdate" /v TargetGroup /f
    REG DELETE "HKLMSOFTWAREPoliciesMicrosoftWindowsWindowsUpdate" /v WUServer /f
    REG DELETE "HKLMSOFTWAREPoliciesMicrosoftWindowsWindowsUpdate" /v WUStatusServer /f
    REG DELETE "HKLMSOFTWAREPoliciesMicrosoftWindowsWindowsUpdate" /f
  10. Запуск остановленных служб:

    sc.exe config wuauserv start= auto
    sc.exe config bits start= delayed-auto
    sc.exe config cryptsvc start= auto
    sc.exe config TrustedInstaller start= demand
    sc.exe config DcomLaunch start= auto
    net start bits
    net start wuauserv
    net start appidsvc
    net start cryptsvc
В Windows 7 и 8.1 можно было отдельно скачать актуальную версию агента Windows Update Agent (WUA) и переустановить ее (https://support.microsoft.com/en-us/kb/949104.) Последняя версия агента WUA для Windows 7 SP1 — 7.6 (можно посмотреть в свойствах файла %windir%system32Wuaueng.dll). Принудительная переустановка агента WindowsUpdate выполняется следующими командами:

Последняя версия агента WUA для Windows 7 SP1 — 7.6 (можно посмотреть в свойствах файла %windir%system32Wuaueng.dll). Принудительная переустановка агента WindowsUpdate выполняется следующими командами:

  • для Windows 7 x86: WindowsUpdateAgent-7.6-x86.exe /quiet /norestart /wuforce
  • для Windows 7 x64: WindowsUpdateAgent-7.6-x64.exe /quiet /norestart /wuforce


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

wuauclt /resetauthorization /detectnow

Начиная с Windows Server 2016 и Windows 10 утилита wuauclt считается устаревшей, и вместо нее нужно использовать USOClient.exe.

Обновить и применить все настройки Windows Update, заданные через GPO или реестра:

USOClient.exe RefreshSettings

Запустить поиск обновлений:

USOClient.exe StartScan

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

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

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

Ren %systemroot%SoftwareDistribution SoftwareDistribution.bak
Ren %systemroot%system32catroot2 catroot2.bak

Если ничего не помогло, попробуйте вручную скачать и установить последнее кумулятивное обновление для вашей версии Windows из каталога обновлений Microsoft Update Catalog.


Комментарии

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

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