Этот компьютер еще не отправлял отчет о состоянии wsus

Обновлено: 07.07.2024

Ранее, я уже писал, как сверить список компьютеров, которые есть в AD с теми, которые есть во WSUS. Если эти списки не совпадают, то у вас проблема и часть компьютеров не обновляется.

В самом простом случае, вы забыли сделать групповую политику, которая настраивает клиентские компьютеры и серверы на обновление со WSUS, или сконфигурировали ее так, что она не применяется. Ручная настройка параметров через gpedit.msc тоже допустима, но только для тех компьютеров, которые не входят в домен.

Итак, политика применяется, но все равно компьютер не обновляется. Что делать и как лечить?

Для простоты, выкладываю все эти скрипты в уже готовом виде: Wsus-fix

1. Первый скрипт самый простой, и, на самом деле, даже не для лечения используется, а для того, чтобы принудительно запустить проверку на обновление, ну и, заодно, чистит папку, в которой накапливаются дистрибутивы уже установленных обновлений:

wsus_detect_manual.cmd

net stop wuauserv && net stop bits && net stop cryptsvc

del /f /s /q %windir%\SoftwareDistribution\download\* .*

net start wuauserv && net start bits && net start cryptsvc

2. Второй скрипт нужен для того, чтобы “оживить” неработающий сервис WSUS. В нем идет чистка от старых обновлений, после чего папки SoftwareDistribution и Catroot2 переименовываются, что при перезапуске сервиса приведет к их пересозданию. Затем системные dll библиотеки перерегистрируются.

fix_wsus_service.cmd

net stop bits
net stop wuauserv
net stop cryptsvc

del /f /s /q %windir%\SoftwareDistribution\download\* .*

ren %systemroot%\System32\Catroot2 Catroot2.old
ren %systemroot%\SoftwareDistribution SoftwareDistribution.old

REM del /f /s /q %windir%\SoftwareDistribution\*.*

del /f /s /q %windir%\windowsupdate.log

%windir%\system32\regsvr32.exe /U /s %windir%\system32\vbscript.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\mshtml.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\msjava.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\msxml.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\actxprxy.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\shdocvw.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\Mssip32.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wintrust.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\initpki.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\dssenh.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\rsaenh.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\gpkcsp.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\sccbase.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\slbcsp.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\cryptdlg.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\Urlmon.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\Oleaut32.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\msxml2.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\Browseui.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\shell32.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\Mssip32.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\atl.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\jscript.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\msxml3.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\softpub.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wuapi.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wuaueng.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wuaueng1.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wucltui.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wups.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wups2.dll
%windir%\system32\regsvr32.exe /U /s %windir%\system32\wuweb.dll

%windir%\system32\regsvr32.exe /s %windir%\system32\vbscript.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\mshtml.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\msjava.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\msxml.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\actxprxy.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\shdocvw.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\Mssip32.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wintrust.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\initpki.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\dssenh.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\rsaenh.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\gpkcsp.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\sccbase.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\slbcsp.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\cryptdlg.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\Urlmon.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\Oleaut32.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\msxml2.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\Browseui.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\shell32.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\Mssip32.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\atl.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\jscript.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\msxml3.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\softpub.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wuapi.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wuaueng.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wuaueng1.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wucltui.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wups.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wups2.dll
%windir%\system32\regsvr32.exe /s %windir%\system32\wuweb.dll

net start bits
net start wuauserv
net start cryptsvc

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

wsus_resetaut_detect_manual.cmd

wuauclt.exe /resetauthorization /detectnow

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

AU_Clean_SID.cmd

@echo on
net stop wuauserv
REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\Current Version\WindowsUpdate" /v AccountDomainSid /f
REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\Current Version\WindowsUpdate" /v PingID /f
REG DELETE "HKLM\SOFTWARE\Microsoft\Windows\Current Version\WindowsUpdate" /v SusClientId /f
net start wuauserv
wuauclt /resetauthorization /detectnow

5. Иногда, для того, чтобы все заработало нужно переустановить агента WSUS. Вначале нужно скачать latest Windows Update Agent, ну а затем установить соответствующую редакцию

для x32 версий Windows

для x64 версий Windows

Если вы счастливый обладатель Itanium – догадаетесь сами :-)

После установки агента нужно обязательно перезагрузиться.

6. Для “лечения” ошибок 0x80070005, т.е. ошибок доступа может пригодиться нижеприведенный скрипт. Он восстанавливает доступы для администраторов и системы к реестру и системным папкам.

Для выполнения этого скрипта понадобится майкрософтовская утилита subinacl.exe. Она входит в resource kit для Windows Server 2003, но пользоваться той версией, что входит туда не стоит, т.к. там неприятные ошибки. Следует скачать subinacl.exe версии 5.2.3790.1180.

Restore_registry_and_system_permission.c md

@echo off
REM Применять при ошибках 0x80070005 Windows Update
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=administrators=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=administrators=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=administrators=f
subinacl /subdirectories %SystemDrive% /grant=administrators=f
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=system=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=system=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=system=f
subinacl /subdirectories %SystemDrive% /grant=system=f

Все эти скрипты можно выполнять практически автоматически, в случае возникновения проблем. Если в результате проблема таки не решена, то приходится разбираться уже плотнее. И тут нам пригодится тот самый windowsupdate.log, который лежит в корне папки Windows. Если компьютер проблемный, то файл этот большого размера. Для простоты, желательно его удалить перед тем как запускать скрипты. Почти во всех скриптах предусмотрена команда его удаления, но не все так просто. Не смотря на остановку сервиса wuauserv, обычно, его продолжают держать открытые IE и т.п. Поэтому, есть хитрый способ. Запускаю

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

Итак, вернемся к логу, коды ошибок WSUS 3 могут помочь в разбирательстве.

Одна из распространенных проблем со wsus клиентом на серверах может заключаться в том, что сам сервис может подключаться к WSUS через прокси, а этого не нужно и наоборот. Манипулировать этим поведением можно с помощью команды proxycfg

Стоит заметить, что есть случаи, когда заставить клиента обновляться со wsus так и не получается. У меня есть прецеденты с парочкой Windows Server 2003 R2, которые мне побороть так и не удалось. Поэтому я их обновляю через интернет :-)

Свежие операционные системы типа Windows 7, Windows 2008 иногда “заводятся” с трудом. Для таких случаев, эмпирическим путем, был найден алгоритм типа:
1. Обновляемся первый раз с сайта microsoft с обновлением агента
2. Потом обновляем агента уже локально
3. А потом все начинает работать

Полезные команды cmd, powershell, администрирование, фичи и решения проблем на win/winserver

Довелось наблюдать следующую картину: некоторые рабочие станции вдруг стали отваливаться от WSUS. При этом, по мере увеличения парка ПК с Windows 10, случаи стали происходить чаще, т.е. примечательно то, что данная проблема происходила только на компьютерах с Windows 10 .

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

Есть, однако, предположение, что это как-то связано с установкой или попыткой установки Feature Upgrade (переход к новому билду ОС), но 100% подтверждения этому нет.

В консоли WSUS при этом можно наблюдать одну из следующих картин:



РЕШЕНИЕ:

1. Первым делом нужно убедиться в правильной настройке адреса сервера WSUS на клиентской машине

Для этого проверяем ветку реестра:

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate

2. Убеждаемся в доступности самого сервера WSUS с клиентской машины

ping, tracert, проверка порта telnet-ом и т.д.

3. Если предыдущие два пункта выполнены успешно, выполняем команду:

Данная команда должна заново перерегистрировать станцию на сервере WSUS

4. Командой

После успешного проделывания команд, рабочая станция на WSUS актуализируется:


ИО Капитана Очевидности

rsop.msc никаких сторонних настроек не показывает
Полный лог прилагаю

-------
Самое совершенное оружие, которым забиты арсеналы богатых и процветающих наций, может легко уничтожить необразованного, больного, бедного и голодного. Но оно не может уничтожить невежество, болезнь, нищету и голод. (Фидель Кастро)

Почему всех осужденных за измену Родине при Сталине реабилитировали при Горбачёве по отсутствию состава преступления? Потому что при Горбачёве измену Родине перестали считать преступлением.

что в логах самого клиента (windows\WindowsUpdate.log)?

Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

ИО Капитана Очевидности

В общем, WSUS debug tool вызывал ошибку из-за отсутствия web-сервера на стандартном порту - зачем-то он ему был нужен. Запустил на ISA "вёб-сервер по-умолчанию" и проверка прошла успешно.

Теперь по обновлениям.
Последовав совету Гугла, Великого и Ужасного, просто удалил компьютер из WSUS и сделал следующее
1. net stop wuauserv
2. Удалил значения (если таковые существуют) PingID, AccountDomainSid, SusClientId SusClientIdValidation из ветки реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate
3. очистил c:\windows\software distribution
4. net start wuauserv
5. wuauclt /resetauthorization /detectnow

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

-------
Самое совершенное оружие, которым забиты арсеналы богатых и процветающих наций, может легко уничтожить необразованного, больного, бедного и голодного. Но оно не может уничтожить невежество, болезнь, нищету и голод. (Фидель Кастро)

Почему всех осужденных за измену Родине при Сталине реабилитировали при Горбачёве по отсутствию состава преступления? Потому что при Горбачёве измену Родине перестали считать преступлением.

Клиентские компьютеры предоставляют отчет обратно на сервер Microsoft Windows Software Update Services (WSUS). Кроме того могут возникнуть следующие неполадки:

Причина

Эта проблема возникает, если количество отчетов событий в таблице tbEventInstance превышает 1 миллион строк.

Процесс автоматического удаления происходит очень медленно и блокирует клиентских компьютеров из отчетов обратно на сервер WSUS. По умолчанию WSUS настроена для удаления события, которые старше, чем за 15 дней на рабочих станциях, которые старше, чем 90 дней на серверах. WSUS удаляет старые события со скоростью 1000 событий каждые 12 часов.

Для получения сведений о том, как определить, является ли таблица tbEventInstance превысило 1 миллион строк обратитесь к разделу «Дополнительная информация».

Решение

Сведения об исправлении

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

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

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

Примечание. В форме "Пакет исправлений доступен для скачивания" отображаются языки, для которых доступно исправление. Если нужный язык не отображается, значит исправление для данного языка отсутствует.

Предварительные условия

Для установки предварительные компоненты не требуются.

Необходимость перезагрузки

Не требуется перезагружать компьютер после установки данного исправления.

Сведения о замене исправлений

Это исправление не заменяет других исправлений.

Сведения о файлах

Английская версия данного исправления содержит атрибуты файла (или более поздние атрибуты файлов), приведенные в следующей таблице. Дата и время для этих файлов указаны в формате общего скоординированного времени (UTC). При просмотре сведений о файле, он преобразуется в локальное время. Чтобы узнать разницу между временем по Гринвичу и местным временем, откройте вкладку Часовой пояс элемента "Дата и время" панели управления.

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

Но в большинстве случаев это связано с недавними изменениями программного обеспечения, из-за которых ваша машина находилась в состоянии ожидания перезагрузки. И перезапуск, похоже, не совсем подходит. Однако у нас есть несколько решений, которые могут вам помочь, так что давайте начнем.

Что делать, если отчеты WSUS не работают?

  1. Сброс Winsock
  2. Перезагрузите сервер WSUS
  3. Проверьте свой брандмауэр
  4. Редактирование реестра
  5. Решение для удаленного рабочего стола
  6. Обновите или переустановите сетевые драйверы

1. Сброс Winsock


  1. Запустите Командную строку от имени администратора.
  2. Введите netsh каталог сброса winsock в Командная строка , нажмите и нажмите Enter .
  3. Введите netsh int ip reset reset.log и нажмите Enter .
  4. Перезагрузите компьютер и попробуйте снова запустить службы обновления.

2. Перезапустите сервер WSUS.

Для этого выполните следующие действия:

  1. В меню «Пуск» откройте командную строку с правами администратора.
  2. Теперь введите следующую команду:
  3. А теперь введите:

3. Проверьте свой брандмауэр

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

4. Редактирование реестра

Следующее исправление включает в себя редактирование некоторых разделов реестра. Для этого выполните следующие действия:


  1. Сначала нажмите Пуск , нажмите Запустить , введите regedit , а затем нажмите ОК .
  2. Найдите и нажмите, чтобы выбрать следующий раздел реестра: HKEY_LOCAL_MACHINE> SYSTEM> CurrentControlSet> Элемент управления> Диспетчер сеансов .
  3. После выбора подключа щелкните правой кнопкой мыши PendingFileRenameOperations и выберите Удалить .
  4. Найдите следующий раздел реестра и нажмите на него: HKEY_LOCAL_MACHINE> ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ> Microsoft> Windows> CurrentVersion> WindowsUpdate> Auto Update .
  5. После выбора этого ключа нажмите правой кнопкой мыши RebootRequired и выберите Удалить .
  6. В разделе меню Файл нажмите Выход , чтобы закрыть редактор реестра.
  7. Перезагрузите машину.

5. Решение для удаленного рабочего стола

Это исправление работает в том случае, если вы используете сервер удаленного рабочего стола и у вас возникают проблемы с подключением. Для этого выполните следующие действия:


  1. Нажмите Пуск , затем перейдите в Администрирование и Открыть управление компьютером .
  2. В разделе консоли перейдите на вкладку Локальные пользователи и Группы .
  3. На вкладке сведений откройте Группы .
  4. Нажмите Пользователи удаленного рабочего стола , а затем нажмите Добавить .
  5. В диалоговом окне «Выбор пользователей» нажмите «Местоположения», чтобы указать местоположение поиска.
  6. Нажмите Типы объектов , чтобы указать типы объектов, которые вы хотите найти.
  7. Введите имя, которое вы хотите добавить, в поле Введите имена объектов для выбора .
  8. Нажмите Проверить имена .
  9. Найдя имя, нажмите ОК .

6. Обновите или переустановите сетевые драйверы

Во-первых, чтобы обновить их, выполните следующие действия:

  1. В окне поиска на панели задач выберите Диспетчер устройств .
  2. Выберите категорию, чтобы увидеть названия устройств, затем щелкните правой кнопкой мыши ту, которую хотите обновить.
  3. Выберите Обновить драйвер .
  4. Теперь нажмите Автоматический поиск обновленного программного обеспечения драйвера .
  5. Когда обновление завершено, все готово.

Если этот метод не работает, вы можете использовать сторонние приложения, такие как TweakBit Driver Updater . Используя этот инструмент, вы автоматически обновите все свои драйверы всего за пару кликов.

Чтобы переустановить сетевые драйверы, выполните следующие действия.

  1. Повторите первый шаг из предыдущего обходного пути.
  2. Щелкните правой кнопкой мыши на имени устройства и выберите Удалить .
  3. Теперь перезагрузите вашу машину.
  4. Windows попытается переустановить драйвер при запуске.

Читайте также: