Если вы столкнулись с проблемой
(ошибкой) при установке или получении обновлений через Windows Update
или Microsoft Update, можете выполнить рекомендации, указанные ниже.
Это общие рекомендации, позволяющие решить проблему в большинстве
случаев, но они не дают 100% гарантии ее решения. Зачастую в первую
очередь стоит начать с их выполнения прежде чем разбирать частный
случай. Конкретизировать проблему вам поможет содержимое файла /WINDOWS/WindowsUpdate.log, который создается в процессе обновления системы. В чтении и понимании этого файла вам поможет статьяHow to read the Windowsupdate.log file Разберем наиболее частые причины ошибок и способы их устранения.
I. Ошибки, связанные с подключением.
Симптомы: при обращении к
веб-узлу Windows Update или Microsoft Update для проверки наличия и
установки обновлений появляется одно из следующих сообщений об ошибке:
Код ошибки (в шестнадцатеричном формате) |
Код ошибки (в десятичном формате) |
Описание ошибки API |
0x80070008 |
-2147024888 |
ERROR_NOT_ENOUGH_MEMORY |
0x800705B4 |
-2147023436 |
Error_Timeout |
0x8007000E |
-2147024882 |
E_OUTOFMEMORY |
0x80072EE2 |
-2147012894 |
ERROR_INTERNET_TIMEOUT |
0x80072EFD |
-2147012867 |
ERROR_INTERNET_CANNOT_CONNECT |
0x80072EE7 |
-2147012889 |
ERROR_INTERNET_NAME_NOT_RESOLVED |
0x80072EFE |
-2147012866 |
ERROR_INTERNET_CONNECTION_ABORTED |
0x8024400E |
-2145107954 |
SUS_E_PT_SOAP_SERVER |
0x80072F76 |
-2147012746 |
ERROR_WINHTTP_HEADER_NOT_FOUND |
0x80244016 |
-2145107946 |
SUS_E_PT_HTTP_STATUS_BAD_REQUEST |
0x80072F78 |
-2147012744 |
ERROR_WINHTTP_INVALID_SERVER_RESPONSE |
0x80244022 |
-2145107934 |
SUS_E_PT_HTTP_STATUS_SERVICE_UNAVAIL |
0x80090305 |
-2146893051 |
SEC_E_SECPKG_NOT_FOUND |
0x8024402F |
-2145107921 |
WU_E_PT_ECP_SUCCEEDED_WITH_ERRORS |
0x8009033F |
-2146892993 |
SEC_E_Shutdown_IN_Progress |
0xC80003FA |
-939523078 |
hrReadVerifyFailure |
0x80244008 |
-2145107960 |
SUS_E_PT_SOAPCLIENT_PARSEFAULT |
0xC800042D |
-939523027 |
HrVersionStoreOutOfMemory |
0x8024400A |
-2145107958 |
SUS_E_PT_SOAPCLIENT_PARSE |
0x80071A90 |
-2147018096 |
ERROR_TRANSACTIONAL_CONFLICT |
0x8024400D |
-2145107955 |
SUS_E_PT_SOAP_CLIENT |
1.1 Первое, что необходимо сделать, после проверки доступности подключения как такового, конечно, - это временно отключить брандмауэр Windows или сторонний сетевой экран и повторить попытку получения обновлений. Внимание!
Отключение сетевого экрана снижает безопасность компьютера, поэтому
после повторной попытки получения обновлений необходимое его включить. Если отключение сетевого экрана не устранило проблему, переходите к п. 1.2
1.2 Отключите
(выгрузите) антивирусное ПО на время попытки проведения обновления.
Этот шаг также снижает уровень безопасности компьютера, независимо от
результата следует снова включить антивирусное ПО. Если это не помогло устранить проблему, переходите к п. 1.3
1.3 Добавьте веб-узлы Windows Update и Microsoft Update в список надежных узлов:
- Запустите Windows Internet Explorer.
- В меню Сервис выберите команду Свойства обозревателя.
Если
используется Internet Explorer 7 и меню не доступно, нажмите клавишу
ALT на клавиатуре, чтобы получить доступ к меню Internet Explorer.
- Перейдите на вкладку Безопасность и выделите значок Надежные узлы.
- Нажмите кнопку Узлы и снимите флажок Для всех узлов этой зоны требуется проверка серверов (https:)
- В поле Добавить узел в зону введите указанные ниже адреса и затем нажмите кнопку Добавить после каждого из них.
- http://download.windowsupdate.com
- https://*.windowsupdate.microsoft.com
- http://*.windowsupdate.microsoft.com
- http://*.update.microsoft.com
- http://*.download.windowsupdate.com
- http://update.microsoft.com
- http://*.windowsupdate.com
- http://download.microsoft.com
- http://windowsupdate.microsoft.com
- http://ntservicepack.microsoft.com
- http://wustat.windows.com
- https://*.update.microsoft.com
Если этот способ не устранил неполадку, переходите к п. 1.4
1.4
Убедитесь, что на компьютере установлено последнее обновление фоновой
интеллектуальной службы передачи (службы BITS 2.0 и WinHTTP 5.1) Статья MSKB с описанием обновления и ссылками на загрузку:Обновление для Windows Server 2003, Windows XP и Windows 2000, содержащее службы BITS 2.0 и WinHTTP 5.1 Данный метод относится только к Windows 2000/XP/2003
Если неполадку не удалось устранить указанными выше способами, переходите к п. 2
2. Проверка файлов Hosts
Некоторые программы, в том числе и вредоносные, могут изменять файлы Hosts для управления расширением DNS-имен. Чтобы удалить записи из файла Hosts, выполните следующие действия:
- Нажмите кнопку Пуск и выберите пункт Выполнить
- Скопируйте и вставьте (или введите) в поле Открыть следующую команду
notepad %windir%/system32/drivers/etc/hosts Примечание. При приглашении выбрать программу, с помощью которой следует открыть файл Hosts, выберите Блокнот и нажмите кнопку ОК
- Удалите строки файла, содержащие записи для Windows Update или
Microsoft Update. Это могут быть строки, содержащие слова «microsoft» и
«update». Например такие:
- 64.4.21.125 http://update.microsoft.com
- 64.4.21.125 http://windowsupdate.microsoft.com
- http://update.microsoft.com
- Сохраните отредактированный файл и перезагрузите компьютер
- Вместо перезагрузки можно очистить кэш DNS. Для этого выполните указанные ниже действия.
- Нажмите кнопку Пуск и выберите пункт Выполнить, введите cmd в поле Открыть и нажмите клавишу ВВОД.
- В командной строке введите ipconfig /flushdns и нажмите клавишу ВВОД.
3. Удаление записи прокси-сервера из настройки прокси-сервера WinHTTP Примечание. Этот способ применяется только к Windows XP и Windows Server 2003. Данный способ не применяется к Windows Vista.
Чтобы удалить запись прокси-сервера из настройки прокси-сервера WinHTTP, выполните следующие действия.
- Запустите обозреватель Internet Explorer.
- В меню Сервис выберите команду Свойства обозревателя.
- Перейдите на вкладку Подключения и нажмите кнопкуНастройка сети.
- В диалоговом окне Настройка параметров локальной сети установите флажок Автоматическое определение параметров и нажмите кнопку ОК.
- Закройте Internet Explorer.
- Нажмите кнопку Пуск и выберите пункт Выполнить, введите в поле Открыть командуcmd и нажмите клавишу ВВОД
- Введите следующие команды. После каждой команды нажимайте клавишу ВВОД
proxycfg -d
net stop wuauserv
net start wuauserv
exit
В случае использования прокси-сервера в организации смотрите статью MSKBКак клиент Windows Update определяет, какой прокси-сервер использовать для подключения к веб-узлу Windows Update
II. Устранение определенных ошибок WU
Действия и возникновении ошибок
- 0x800A0046
- 0x80248011
- 0x8024402C
- 0x8024502D
- 0x800A01AD
Причины Ошибка с кодом 0x800A0046 появляется по одной из следующих причин:
- Учетная запись пользователя, используемая для входа, принадлежит к группе учетных записей Гости или Пользователи.
- Дескриптор безопасности запрещает пользователям, прошедшим проверку
подлинности, получать доступ к веб-узлу Windows Update или Microsoft
Update.
- В списке пользователей и групп политики Олицетворять клиента после проверки подлинности отсутствует учетная запись Администратор и Служба.
Причиной ошибки с кодом 0x80248011 может быть проблема с базой данных, в которой хранятся данные о Центре обновления Windows или Центре обновления Майкрософт.
Ошибки с кодом 0x8024402C и 0x8024502D обычно появляются из-за наличия неправильных символов в параметрах переопределения прокси. Для их устранения смотрите п.3 раздела I
Ошибка с кодом 0x800A01AD появляется, когда файл Wuaueng.dll отсутствует или неправильно зарегистрирован.
1. Ошибка с кодом 0x800A0046
Чтобы устранить эту ошибку, используйте один из следующих способов.
Способ 1. Удалите учетную запись пользователя, которая вызывает ошибку, из группы Гости или Пользователи
- Выберите в меню Пуск пункт Выполнить, введите команду control admintools и нажмите кнопку ОК.
- Откройте Управление компьютером.
- Разверните узел Локальные пользователи и группы.
- Выберите раздел Пользователи.
- Откройте учетную запись, которая используется для доступа к веб-узлу Windows Update или Microsoft Update.
- Откройте вкладку Членство в группах.
- Выберите требуемую учетную запись пользователя и нажмите кнопку
Удалить. При этом учетная запись должна состоять по крайней мере в
одной группе.
Способ 2. Задайте дескриптор безопасности
- Выберите в меню Пуск пункт Выполнить, введите команду cmd и нажмите кнопку ОК.
- Введите команду
sc
sdset wuauserv
D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU) и нажмите клавишу ВВОД.
Способ 3. Добавьте локальные учетные записи Администратор и Служба в политику Олицетворять клиента после проверки подлинности
- В меню Пуск выберите пункт Выполнить, введите команду secpol.msc и нажмите клавишу ВВОД.
- Разверните узел Локальные политики.
- Выберите элемент Назначение прав пользователя.
- Откройте политику Олицетворять клиента после проверки подлинности.
- На вкладке Локальные параметры безопасности нажмите кнопку Добавить пользователя или группу и добавьте Администратор иСлужба в список Пользователи и группы.
- После применения перезагрузите компьютер.
Способ 4. Настройте для службы удаленного вызова процедур (RPC) вход с системной учетной записью
- Выберите в меню Пуск пункт Выполнить, введите команду services.msc и нажмите кнопку ОК.
- Откройте свойства службы Удаленный вызов процедур (RPC)
- Откройте вкладку Вход в систему, установите переключатель С системной учетной записью
2. Ошибка с кодом 0x80248011
Перед устранением ошибки очистите кэш обозревателя Internet Explorer. Для этого выполните следующие действия:
- В меню Сервис обозревателя Internet Explorer выберите пункт Свойства обозревателя.
- На вкладке Общие в разделе Временные файлы Интернета нажмите кнопку Удалить файлы.
Чтобы устранить эту ошибку, создайте заново базу данных, в которой хранятся сведения о Windows Update или Microsoft Update. Для этого выполните следующие действия:
- Откройте меню Пуск, выберите пункт Выполнить, введите в поле Открыть команду cmd и нажмите кнопку OK.
- В командной строке введите следующую команду и нажмите клавишу ВВОД:
net stop wuauserv
- В командной строке введите следующую команду и нажмите клавишу ВВОД:
cd /d c:/Windows/SoftwareDistribution здесь c:/Windows – это папка, в которой установлена операционная система
- В командной строке введите следующую команду, включая кавычки, и нажмите клавишу ВВОД:
rd /S /Q DataStore
- В командной строке введите следующую команду и нажмите клавишу ВВОД:
net start wuauserv
3. Ошибка с кодом 0x800A01AD
Чтобы устранить эту ошибку, выберите один из следующих способов.
Способ 1. Зарегистрируйте программные файлы MSXML
Чтобы зарегистрировать файлы MSXML, выполните следующие действия. Примечание.
Возможно, на компьютере не установлены файлы, которые указаны в
действиях 3 и 5. В этом случае при попытке зарегистрировать такой файл
будет получено следующее сообщение об ошибке:
Ошибка при вызове LoadLibrary("<имя_файла>.dll") – указанный файл не найден. Пропустите это сообщение и переходите к выполнению следующего действия.
- Выберите в меню Пуск команду Выполнить, введите следующую команду в поле Открыть
regsvr32 Msxml.dll
- Выберите в меню Пуск команду Выполнить, введите следующую команду в поле Открыть
regsvr32 Msxml2.dll
- Выберите в меню Пуск команду Выполнить, введите следующую команду в поле Открыть
regsvr32 Msxml3.dll Способ 2. Зарегистрируйте файл Wuaueng.dll Чтобы зарегистрировать файл Wuaueng.dll, выполните следующие действия:
- Нажмите кнопку Пуск, выберите пункт Выполнить, введите команду
regsvr32 Wuaueng.dll
III. Сообщение об ошибке "Одно или несколько обновлений не могут быть установлены"
Эта проблема может возникать в
том случае, если после установки последней версии клиента Windows
Update установка пакета обновления 3 (SP3) осуществляется до
перезагрузки компьютера. В результате новый файлWups2.dll
оказывается незарегистрированным. Во время установки SP3 не удается
обнаружить файл Wups2.dll, поэтому в реестре фиксируется исходная
версия файла Wups.dll, которая содержится в Windows XP SP2 и в Windows
XP SP3. Из-за отсутствия записей в реестре, соответствующих файлу
Wups2.dll, установка обновлений становится невозможной.
- Остановите службу автоматического обновления:
Нажмите кнопку Пуск, выберите в меню пункт Выполнить, введите команду
net stop wuauserv
- Зарегистрируйте файл Wups2.dll:
Введите в окне командной строки (cmd) следующую команду:
regsvr32 %windir%/system32/wups2.dll На компьютере с операционной системой Windows XP Professionalx64 команда будет такой
regsvr32 %windir%/syswow64/wups2.dll
- Запустите службу автоматического обновления:
Нажмите кнопку Пуск, выберите в меню пункт Выполнить, введите команду
net start wuauserv
IV. Переустановка Windows Update Agent
Загрузите Windows Update Agent соответствующий вашей ОС:Загрузить пакет windowsupdateagent30-x86.exe- для Windows 32-bit Загрузить пакет windowsupdateagent30-x64.exe -
для Windows 64-bit Вполне вероятно прямые ссылки могут со временем
измениться и версия агента также может быть обновлена, найти последнюю
версию вы сможете в статьеПолучение последней версии агента обновления Windows
После загрузки поместите файл на диск C:
и выполните последовательно следующие команды в cmd (в Windows Vista
команду необходимо выполнять в командной строке запущенной от имени
администратора):
net stop wuauserv
net stop bits
start /wait C:/WindowsUpdateAgent30-x86.exe /wuforce Имя исполняемого файла может отличаться от указанного, если вы используете файл для Windows 64-bit После выполнения всех трех команд перезагрузите компьютер.
V. Переустановка Windows Installer
Загрузите и установитеWindows Installer 4.5
VI. Использование утилиты AU Check
Утилита проверки и сброса
(восстановления) параметров автоматического обновления, Windows Update
и Microsoft Update (AU Check) способна решить большинство проблем с
получением или установкой обновлений путем сброса конфигурации
соответствующих параметров в значение по умолчанию. Фактически
утилита представляет из себя набор reg-файлов, cmd-файлов и
VBS-сценариев, которые автоматизируют большинство из указанных выше
способов решения проблемы с обновлениями. Поддерживаются следующие ОС
(32 bit и 64-bit):
- Windows 2000
- Windows XP
- Windows Vista
- Windows Server 2003
- Windows Server 2008
Утилита
выполнена в виде самораспаковывающегося архива. При запуске
автоматически распознается версия и архитектура используемой ОС Windows
и начинается сброс параметров. В общей сложности утилита может
отрабатывать около 15-20 минут, а возможно и больше, многое зависит как
от производительности компьютера так и от скорости подключения
интернет. Кстати, подключение к интернету необходимо при использовании
утилиты, поэтому использовать ее в безопасном режиме не стоит. Учитывая довольно обширный перечень операций, выполняемых утилитой, крайне рекомендую создать точку восстановления перед ее использованием. Примерный перечень производимых операций:
- Перерегистрация библиотек (DLL)
- Переименование каталога softwaredistribution/download
- Проверка параметров безопасности служб автоматического обновления и фоновой интеллектуальной службы передачи (BITS)
- Очистка очередь и файлы состояния фоновой интеллектуальной службы
- Перезапуск автоматического обновления и фоновой интеллектуальной службы
- Проверка некоторых параметров системного реестра.
- Создание файл updates.htm в каталоге C:/AULOGS со ссылками на необходимые обновления.
- Создание отчетов об ошибках выполнения операций в каталоге C:/AULOGS.
- Тестирование PROXYCFG и запись лога с его результатами (c:/aulogs)
- Вывод ошибок в дамп при обнаружении проблем регистрации MSXML (c:/aulogs)
- Тестирование WGA с использованием утилиты mgadial и запись результатов в лог (c:/aulogs)
Загрузить последнюю версию AU Check вы можете с этой страницы:AU Check Releases
Конечно рассмотреть все случаи
возникновения неполадок с обновлениями Windows не представляется
возможным да я и не ставил перед собой такой цели. Общие рекомендации,
привденные здесь помогут избавиться от большинства самых
распространенных неполадок, а остальные зачастую нужно разбирать более
детально и каждый конкретный случай в отдельности.
|