Исправляем ошибки установки обновлений Windows 7
Windows 7 по-прежнему остается популярной операционной системой в корпоративной среде, несмотря на то, что уже вышли две новые версии клиентских ОС. Расширенная поддержка «семёрки» закончится лишь 14 января 2020 г., а это значит, что ближайшие 4 года для нее будут выходить обновления, исправляющие обнаруженные уязвимости.
Существует правило – если есть обновления, то есть и проблемы с их установкой. Давайте разберем, какие основные проблемы возникают при обновлении Windows 7 через Windows Server Update Services (WSUS) и как их исправить с наименьшими затратами.
Ошибка #1. Failed to find updates with error code 80244010
Эту ошибку вы практически гарантированно будете наблюдать на любой системе, впервые обратившейся к серверу WSUS. В WindowsUpdate.log также встретится предупреждение:
WARNING: Exceeded max server round trips
Причина проблемы в том, что список обновлений стал слишком большим, и клиент не может принять его за один заход. Подробности — blogs.technet.microsoft.com/sus/2008/09/18/wsus-clients-fail-with-warning-syncserverupdatesinternal-failed-0x80244010
Какое решение предлагает Microsoft? Если после ошибки запустить повторный поиск обновлений, то процесс загрузки метаданных продолжится с момента возникновения ошибки. Терпение господа, терпение. Три, пять попыток wuauclt /detectnow – и все образуется. Не забудьте при повторном поиске дождаться окончания предыдущего цикла поиска, иначе магия не сработает!
Ошибка #2. Не устанавливаются обновления Windows с ошибкой 0x80070308
Встречается эпизодически, и в одном случае из 100 у нее есть единственное и очень специфическое решение — удалить ключ
HKLM\Components\PendingRequired=1
Перезагрузиться. Здесь важно не переусердствовать, не следует удалять никакие другие ключи в этом разделе, даже если они вам очень не нравятся, потому что после этого обновления прекратят ставиться навсегда.
Ошибка #3. Все другие ошибки
Summary:
Seconds executed: 1164
Found 16 errors
Fixed 4 errors
Проблема заключается в том, что во время установки обновлений в системе могут появиться битые файлы. Что является причиной — неисправная сеть, диск, оперативная память, сам Windows Update – выяснить не получится, а исправить ошибки для установки последующих обновлений придется.
Как правило, повреждаются *.cat, *.mum, *.manifest файлы. У кого-то повреждаются *.dll, но я на практике не сталкивался. И вроде бы средство SURT должно само исправить ошибки, поскольку внутри него есть огромный каталог эталонных файлов. Только в последний раз SURT обновлялся в октябре 2014 года, а исправлений на операционную систему с тех пор вышло бесчисленное множество, и многих файлов в каталоге не хватает.
Ниже я опишу последовательность действий, необходимых для исправления ошибок установки обновлений на Windows 7 x64 с использованием SURT. Для редакции x86 просто потребуется другой пакет SURT из KB947821.
Последовательность действий будет следующая.
1. Запустить первый проход Windows6.1-KB947821-v34-x64.msu
Пользователя от работы отвлекать не потребуется, все сделаем удаленно. Создаем следующий командный файл и запускаем его:
где BUHWKS02 – целевая машина.
Когда скрипт отработает и встанет на паузу, проверяем %windir%\Logs\CBS\CheckSUR.log
Если ошибок не найдено – дело не в битых обновлениях.
Если он заканчивается
Summary:
Seconds executed: 1164
Found 16 errors
Fixed 4 errors
CSI Manifest All Zeros Total count: 6
CSI Catalog Corrupt Total count: 3
Fixed: CSI Catalog Corrupt. Total count: 3
CBS MUM Corrupt Total count: 3
CBS Catalog Corrupt Total count: 3
CSI Catalog Thumbprint Invalid Total count: 1
Fixed: CSI Catalog Thumbprint Invalid. Total count: 1
Unavailable repair files:
winsxs\manifests\wow64_microsoft-windows-gdi32_31bf3856ad364e35_6.1.7601.19091_none_c19fa2719495aca9.manifest
winsxs\manifests\amd64_microsoft-windows-capi2-weakcrypto_31bf3856ad364e35_6.1.7601.23290_none_5e936c9c5ce2e8e6.manifest
winsxs\manifests\wow64_microsoft-windows-gdi32_31bf3856ad364e35_6.1.7601.23290_none_c22840d8adb43043.manifest
winsxs\manifests\amd64_microsoft-windows-gdi32_31bf3856ad364e35_6.1.7601.19091_none_b74af81f6034eaae.manifest
winsxs\manifests\amd64_microsoft-windows-capi2-weakcrypto_31bf3856ad364e35_6.1.7601.19091_none_5e0ace3543c4654c.manifest
winsxs\manifests\amd64_microsoft-windows-gdi32_31bf3856ad364e35_6.1.7601.23290_none_b7d3968679536e48.manifest
servicing\packages\Package_2_for_KB3123479
то будем исправлять.
2. Копируем эталонные файлы на целевую машину
Microsoft предлагает нам длинную, путанную процедуру с извлечением хороших файлов из обновлений и размещением их в определенные каталоги средства SURT. При этом пути в статьях неверные. Где-то и вовсе рекомендуют подкладывать оригинальные msu файлы.
Самый простой и правильный вариант следующий — скопировать эталонные файлы с рабочей системы:
*.mum and *.cat из C:\Windows\servicing\Packages складываются в %windir%\Temp\CheckSUR\servicing\packages
*.manifest из C:\Windows\winsxs\Manifests складываются в %windir%\Temp\CheckSUR\winsxs\manifests\
Проблема в том, что битых файлов обычно десятки, и их очень сложно выбрать и скопировать. Тогда на помощь приходит следующий скрипт PowerShell (эталонной считается машина, с которой вы запускаете скрипт)
Как видите, скрипт прост и может быть легко заточен напильником под вашу инфраструктуру.
3. Запускаем второй проход Windows6.1-KB947821-v34-x64.msu
=================================
Checking System Update Readiness.
Binary Version 6.1.7601.22471
Package Version 26.0
2016-03-03 09:15
Checking Windows Servicing Packages
Checking Package Manifests and Catalogs
Checking Package Watchlist
Checking Component Watchlist
Checking Packages
Checking Component Store
Summary:
Seconds executed: 1435
No errors detected
Теперь можно продолжить установку обновлений на целевую машину, например, следующими командными файлами:
set machine= BUHWKS02
psexec -i -s \\%machine% wuauclt /detectnow
pause
set machine= BUHWKS02
psexec -i -s \\%machine% wuauclt /updatenow
pause
Ошибка #4. Если SURT отработал нормально, а обновления все равно не ставятся
Попробуйте прибегнуть к старому приему – сбросить службу Windows Update в исходное состояние. Для этого необходимо удалить каталог %windir%\SoftwareDistribution.
Создаем файл WU-cleanupCMD.cmd:
net stop wuauserv
rmdir /s /q %windir%\SoftwareDistribution
net start wuauserv
wuauclt /detectnow
Запускаем:
set machine= BUHWKS02
psexec -c -s \\%machine% WU-cleanupCMD.cmd
pause
После этого возникнет Ошибка #1, но как бороться с ней мы уже знаем.
Ошибка #5
Клиент исчезает из консоли WSUS. Любопытная ошибка, связанная с неправильным клонированием машин и задвоением (затроением и т.д.) идентификаторов клиентов. Решается так:
Ошибка #6
GetCookie failure, error = 0x8024400D, soap client error = 7, soap error code = 300, HTTP status code = 200
SyncUpdates failure, error = 0x80072EE2, soap client error = 5, soap error code = 0, HTTP status code = 200
Windows Update Client failed to detect with error 0x80072ee2
Ошибка связана с нехваткой ресурсов в AppPool WSUS. Решение — снять лимит на потребляемую память. Как это сделать — статья.
Коротко: Открываем IIS, Application Pools, WsusPool, Advanced Settings.
Параметр Private Memory Limit устанавливаем в 0.
Продолжение темы настройки WSUS — в моей следующей статье: https://habrahabr.ru/post/329440/
PS:
Многие ошибки решены в новом клиенте WSUS:
1. KB3125574 «Windows 7 post SP1 Convenience Rollup Update». Внимательно ознакомьтесь с разделом Known issues!
Предварительно необходимо установить KB3020369 «April 2015 servicing stack update for Windows 7 and Windows Server 2008 R2».
Что делать, если не работает центр обновления системы Windows 7
Мы не до конца осознаем, насколько упростилась наша жизнь с появлением автоматического обновления операционной системы через сеть. Представьте себе, что было бы, если бы за каждой новой заплатой и за каждым промежуточным нововведением нам пришлось бы бежать на кудыкину гору или писать в Microsoft письма с просьбой выслать по почте диск с сервис-паком? Картина вырисовывается совсем удручающая. А ведь когда-то примерно так и было. Владельцы первых персональных компьютеров за каждой новой программой бегали на рынок. Чтобы купить улучшенный текст-процессор или очередную игрушку нужно было стоптать всю обувь.
С появлением Интернета подобные проблемы исчезли. Зато появились новые – центр обновлений Windows периодически радует нас отказами выполнять свои обязанности. Что делать, если не работает центр обновлений Windows 7 – об этом наша заметка.
Проблемы с центром обновлений Windows могут носить разный характер: центр может не находить и не загружать обновлений. А может и вовсе не работать, выдавая ошибку при попытке запуска.
Все эти вопросы мы рассмотрим по порядку.
Сброс и перезапуск службы
Один из способов восстановления работоспособности центра обновлений Windows – сброс и перезапуск ряда служб, ответственных за его функционирование. Это поможет в подавляющем большинстве случаев, а делается это так:
Открывается программа «Блокнот» . Затем в новый документ вносятся строки, показанные на рисунке ниже.
Данный документ сохраняется с любым именем и расширением «bat» (например, script.bat ). Для этого в окошке сохранения нужно в поле «Тип файла» выбрать значение «Все файлы» , а поле для имени сохраняемого файла указать имя вместе с расширением. Скрипт можно сохранить в любую папку.
UPDATE: чтобы не мучиться с созданием скрипта, можете скачать готовый Скрипт сброса Windows Update
Далее необходимо щелкнуть по иконке файла правой кнопкой мыши и в открывшемся контекстном меню выбрать пункт «Запуск от имени администратора» .
В процессе своего исполнения данный командный файл остановит службу центра обновлений Windows, а также некоторые другие службы: службу криптографии и фоновую интеллектуальную службу передачи BITS. Создаются вспомогательные, резервные папки и Windows загружает службы заново. Скрипт отработает и исправит все ошибки в центре безопасности Windows. Только помните: проверять работает центр или нет – нужно только после перезагрузки компьютера и перезапуска Windows. Процесс исполнения скрипта выглядит так, как показано на следующем рисунке:
Если метод не помог
Указанный выше метод не всегда приводит к ожидаемым результатам. В этом случае можно испробовать другие возможности, например:
- В параметрах соединения с сетью выставить DNS со значениями: 8.8.8.8 и 8.8.4.4 .
- Выясните, запущены ли службы: фоновая интеллектуальная служба передачи BITS, а также служба криптографии.
- Если центр обновления Windows «вылетает» с ошибкой, то зафиксируйте ее номер и поищите решение проблемы в Интернете.
Если ничто из перечисленного не поможет, то можете попробовать крайнее средство – переустановить операционную систему. Это кончено крайняя мера, но иногда единственно возможная.
Ведь пользоваться компьютером с неработающей службой подгрузки сервис-паков – это навлекать на себя неприятности в виде вирусных нашествий и прочих подобных проблем.
Кроме того вы не получите удовольствия от использования в системе новых «фишек». Если же способ со скриптом помог, — не спешите удалять этот файлик, спрячьте его в надежное место до лучших времен – вдруг снова понадобится. Мы надеемся на то, что исчерпывающе ответили на вопросы по данной теме.
Не удается обновить Windows 7
Не удается обновить установленную системы Windows 7 стандартным способом. При запуске установки с исходного дистрибутива с выбором опции «Обновление системы» я получаю ошибку:»
Your current version of Windows is more recent than the version you are trying to upgrade to. Windows cannot complete the upgrade.
Ответы (15)
* Попробуйте выбрать меньший номер страницы.
* Введите только числа.
* Попробуйте выбрать меньший номер страницы.
* Введите только числа.
Для решения Вашего вопроса выполните следующие действия:
- http://go.microsoft.com/fwlink/?LinkId=231149
- Заходим в папку «с/windows/softwaredistribution/download» Все удаляем от туда.
- Запускаем Командная строка(администратор) и вводим команду – wuauclt.exe /update
- Открываем Командную строку от имени Администратора — Выполняем команду:
- Пожалуйста, следуйте приведённым ниже шагам, чтобы сбросить обновления компонентов Windows:
1. Выберите « Командная строка(администратор) » в меню.
2. Остановите BITS, Cryptographic, MSI Installer и Windows Update Services . Чтобы сделать это, введите следующие команды в командной строке. Нажмите клавишу «ENTER» после ввода каждой команды.
net stop msiserver
3. Теперь переименуйте папки SoftwareDistribution и Catroot2. Вы можете сделать это, введя следующие команды в командной строке. Нажмите клавишу «ENTER» после ввода каждой команды.
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
ren C:\Windows\System32\catroot2 Catroot2.old
4. Теперь , давайте перезапустим BITS, Cryptographic, MSI Installer и Windows Update Services . Для этого введите следующие команды в командной строке. Нажмите клавишу ВВОД после ввода каждой команды.
net start wuauserv
net start cryptSvc
net start msiserver
5. Введите Exit в командной строке, чтобы закрыть её.
Теперь вы можете попробовать запустить обновления Windows и проверьте, если вышеуказанные шаги решить этот вопрос.
Для получения дополнительной информации вы можете обратиться по ссылке:
Как сбросить компонентов центра обновления Windows?
Это помогло устранить вашу проблему?
К сожалению, это не помогло.
Великолепно! Спасибо, что пометили это как ответ.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
Все перечисленные шаги были успешно выполнены, однако, как и ожидалось, это не привело к решению описанной проблемы.
Вообще не очень понятно какое отношение проблемы со службой установки обновлений Windows могут повлиять на описанную мной проблему с установкой системы Windows с исходного дистрибутива поверх существующей системы с выбором опции обновления установленной системы.
Как я уже писал выше, версии существующей системы и дистрибутива совпадают (7601.19110), тем не менее в результате проверки совместимости установщик по прежнему выдает ошибку » Your current version of Windows is more recent than the version you are trying to upgrade to. Windows cannot complete the upgrade. «
Это помогло устранить вашу проблему?
К сожалению, это не помогло.
Великолепно! Спасибо, что пометили это как ответ.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
Ошибка центра обновлений Windows
Это помогло устранить вашу проблему?
К сожалению, это не помогло.
Великолепно! Спасибо, что пометили это как ответ.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
При чем здесь центр обновлений Windows?
Вы хорошо прочитали описание моей проблемы?
Это помогло устранить вашу проблему?
К сожалению, это не помогло.
Великолепно! Спасибо, что пометили это как ответ.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
А вы зашли в тему, и прочитали ответ в ней?
Там, как раз, и говорится о проблемах с переустановкой в режиме обновление, и дана ссылка на статью поддержки, о удалении пакета и причинах невозможности его удаления.
При любых, необратимых повреждениях Windows, как и с Центром обновления, в той теме, есть стандартные рекомендации для восстановления работоспособности системы, через восстановление или переустановку.
Это помогло устранить вашу проблему?
К сожалению, это не помогло.
Великолепно! Спасибо, что пометили это как ответ.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
я не только зашел в тему, но и внимательно прочитал ее, а также прошел по всем ссылкам, указанным в теме.
По вашему логика получается следующая:
1. Не получается переустановить систему в режиме обновления -> попробуйте удалить SP1
2. Не получается удалить SP1 -> переустановите систему вчистую.
Все просто и понятно.
Спасибо за мудрый, но совершенно бесполезный совет.
Можно было просто так и написать, а не запутывать ссылками на другие темы.
Это помогло устранить вашу проблему?
К сожалению, это не помогло.
Великолепно! Спасибо, что пометили это как ответ.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
Это не моя логика, а стандартные рекомендации поддержки Windows.
Которые невозможно обойти.
Именно поэтому, в той теме, и помечен ответ.
Если вы ищите чуда, то, к сожалению, его никто вам не обеспечит.
Это помогло устранить вашу проблему?
К сожалению, это не помогло.
Великолепно! Спасибо, что пометили это как ответ.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
Это помогло устранить вашу проблему?
К сожалению, это не помогло.
Великолепно! Спасибо, что пометили это как ответ.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
Еще раз повторю, если у вас возникли проблемы с удалением пакета, то ваша система повреждена, что, неизбежно влечет за собой чистую переустановку.
Повреждение наступило в результате заражения, неопределяемого автономными антивирусами, по причине отсутствия определения в их базах.
Вы использовали программы чистильщики и оптимизаторы, и система получила необратимые повреждения.
Действия пользователя с системными файлами привели к неработоспособности функций Windows, вследствии чего стало невозможным какое-либо восстановление.
Вот три основных причины, при которых нужна чистая переустановка системы, при коробочной версии, а при ОЕМ, восстановление до заводских параметров.
Если, для вас это пустые разговоры, то обращайтесь в сервис-центр, где, за плату, вам будут выискивать способ исправления необратимого повреждения.
А выставлять пальцы веером, на этом форуме не стоит.
Это помогло устранить вашу проблему?
К сожалению, это не помогло.
Великолепно! Спасибо, что пометили это как ответ.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
спасибо за ваши предположения, но в моем случае они не верны, а невозможность удаления SP1 объясняется гораздо проще (смотри мой первый пост).При этом все функции системы вполне себе работают (щас пишу вам из этой системы). Просто система стала очень неповоротливой и начала немного глючить, что мне мешает при ежедневной работе и немного раздражает. По этой причине и появилось желание восстановить ее в первоначальное состояние без переустановки всех программ и выполнения заново всех пользовательских настроек (почта, плагины браузеров и т.д.). При этом функционал установки системы поверх существующей с обновлением (т.е. сохранением всех настроек) является стандартным функционалом и насколько я понимаю не зависит от состояния существующей системы за исключением того, что он проверяет версию установленной ОС и сравнивает ее с версией своего дистрибутива. Вот тут как раз собака и порылась. Но я поднял версию дистрибутива до версии существующей системы (опять же стандартными средствами). Однако продолжаю получать ошибку, описанную в первом посте, которая не объясняется существующими на данный момент статьями из базы знание Microsoft.
Вашу идею с переустановкой системы вчистую я уже понял. Видимо так и придется поступить, если у меня не будет других идей как мою ситуацию можно исправить или обойти.
Хочу вам также сказать, что если вы сюда пишите от нечего делать, то я вам настоятельно рекомендую заняться более полезными занятиями.
Спасибо за понимание.
Это помогло устранить вашу проблему?
К сожалению, это не помогло.
Великолепно! Спасибо, что пометили это как ответ.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.