Мы обновили SCCM 2012 SP1 на Server 2008 R2 до SCCM 2012 R2 CU2 на Server 2012 R2. Очень простая иерархия сайтов - один сервер сайта предоставляет роли MP, DP, SUP и т. Д. И имеет установленный WSUS (вся конфигурация выполняется SCCM).
Я пытаюсь развернуть обновления Windows и обновления SCEP; мои обновления определений SCEP работают отлично, но обновления Windows 7, такие как обновления безопасности и критические, не так хорошо работают. Между обновлениями Windows и SCEP соответствующие группы обновлений программного обеспечения, ADR, развертывания и т. Д. Идентичны в той степени, в которой это актуально. Нет ошибок в UpdatesDeployment.log
, UpdatesHandler.log
, UpdatesStore.log
, WUAHandler.log
, или WindowsUpdate.log
. Единственное, что меня особенно выделяет, это то, что когда я выполняю цикл сканирования обновления программного обеспечения (действие клиента SCCM) от клиента, WindowsUpdate.log
предлагает эту информацию:
Agent ** START ** Agent: Finding updates [CallerId = CcmExec]
Agent * Include potentially superseded updates
Agent * Online = Yes; Ignore download priority = Yes
Agent * Criteria = "(DeploymentAction=* AND Type='Software') OR (DeploymentAction=* AND Type='Driver')"
Agent * ServiceID = {3DA21691-E39D-4DA6-8A4B-B43877BCB1B7} Managed
Agent * Search Scope = {Machine}
PT +++++++++++ PT: Synchronizing server updates +++++++++++
PT + ServiceId = {3DA21691-E39D-4DA6-8A4B-B43877BCB1B7}, Server URL = http://[REDACTED]:8530/ClientWebService/client.asmx
PT +++++++++++ PT: Synchronizing extended update info +++++++++++
PT + ServiceId = {3DA21691-E39D-4DA6-8A4B-B43877BCB1B7}, Server URL = http://[REDACTED]:8530/ClientWebService/client.asm
PT + ServiceId = {3DA21691-E39D-4DA6-8A4B-B43877BCB1B7}, Server URL = http://[REDACTED]:8530/ClientWebService/client.asmx
Agent * Added update {0BCA6C00-4FD3-4280-96BE-B89988FA1702}.101 to search result
~[Omitting 425 more lines identical except for the particular update GUID.]
Agent * Found 426 updates and 75 categories in search; evaluated appl. rules of 2398 out of 3466 deployed entities
Agent ** END ** Agent: Finding updates [CallerId = CcmExec]
~[Omitting a lot of identical lines that describe WUA's (successful) reporting.]
COMAPI >>-- RESUMED -- COMAPI: Search [ClientId = CcmExec]
COMAPI - Updates found = 426
COMAPI -- END -- COMAPI: Search [ClientId = CcmExec]
Так что, как ни крути, он нашел некоторые обновления, но никогда ничего не устанавливает, и обновления не отображаются в Центре программного обеспечения, даже если развертывание настроено на это. Однако, если я использую Центр обновления Windows для проверки обновлений на клиенте, я получаю этот результат в WindowsUpdate.log
:
Agent ** START ** Agent: Finding updates [CallerId = AutomaticUpdates]
Agent * Online = Yes; Ignore download priority = No
Agent * Criteria = "IsInstalled=0 and DeploymentAction='Installation' or IsPresent=1 and DeploymentAction='Uninstallation' or IsInstalled=1 and DeploymentAction='Installation' and RebootRequired=1 or IsInstalled=0 and DeploymentAction='Uninstallation' and RebootRequired=1"
Agent * ServiceID = {3DA21691-E39D-4DA6-8A4B-B43877BCB1B7} Managed
Agent * Search Scope = {Machine}
Setup Checking for agent SelfUpdate
Setup Client version: Core: 7.6.7600.320 Aux: 7.6.7600.320
~[Omitting lines about signature validation and SelfUpdate check (spoiler alert: "SelfUpdate is NOT required").]
PT +++++++++++ PT: Synchronizing server updates +++++++++++
PT + ServiceId = {3DA21691-E39D-4DA6-8A4B-B43877BCB1B7}, Server URL = http://[REDACTED]:8530/ClientWebService/client.asmx
PT +++++++++++ PT: Synchronizing extended update info +++++++++++
PT + ServiceId = {3DA21691-E39D-4DA6-8A4B-B43877BCB1B7}, Server URL = http://[REDACTED]:8530/ClientWebService/client.asmx
Agent * Found 0 updates and 75 categories in search; evaluated appl. rules of 2398 out of 3466 deployed entities
Agent ** END ** Agent: Finding updates [CallerId = AutomaticUpdates]
AU >>## RESUMED ## AU: Search for updates [CallId = {87B4DC09-5A34-4351-975C-EE9BB69D9346}]
AU # 0 updates detected
AU ## END ## AU: Search for updates [CallId = {87B4DC09-5A34-4351-975C-EE9BB69D9346}]
Я понятия не имею, относятся ли результаты автоматического обновления Windows к проблеме WSUS / SCCM, так что простите меня, если мой второй кусок журналов бесполезен.
Я пробовал решения, предлагаемые в этот вопрос, без изменений в результатах. Кто-нибудь может предложить другие предложения?
Дополнительные детали:
wsyncmgr.log
).distmgr.log
).PatchDownloader.log
, SUPSetup.log
, WCM.log
,WSUSCtrl.log
, или wsyncmgr.log
.На это был дан ответ в TechNet поток.
Великолепный контроль версий SCCM 2012 увеличивает версию каталога SUP каждый раз, когда он загружает новые обновления, как показано на Версия каталога столбец под Мониторинг -> Состояние синхронизации точки обновления программного обеспечения. Каждое обновление, добавляемое SUP, вводится в виде строки в CI_ConfigurationItems таблица в базе данных SCCM. Один столбец в этой таблице, SDMPackageDigest, содержит метаданные XML, включая строку, которая указывает номер версии каталога, в который было добавлено обновление: <Property Name="MinCatalogVersion" Value="[x]" />
, где [x]
является десятичным целым числом. При обновлении с 2012 SP1 до 2012 R2 мы импортировали всю нашу базу данных на новый сервер, а это означало, что все обновления имели запись для MinCatalogVersion
, достигая по крайней мере 2200. Однако SCCM сохраняет версию каталога в разделах реестра, которые не были импортированы, а это означало, что на новом сервере номер версии был перезапущен с 1. Таким образом, SUP не будет устанавливать обновления, которые имел более высокий MinCatalogVersion
чем версия каталога, которая была ... по сути, все.
Чтобы исправить это, нужно изменить три значения реестра на сервере SCCM, все они находятся в разделе HKLM\SOFTWARE\Microsoft\SMS\Components\SMS_WSUS_SYNC_MANAGER
.
После перезапуска SMS_Executive службы, обновления оперативно становились доступными для всех рабочих станций, на которых они были развернуты.
Я признаю, что правильнее было бы использовать XQuery для поиска в XML-данных в таблице SQL наивысшего значения для MinCatalogVersion
; Однако у меня был очень сжатый срок, чтобы исправить проблему, и у меня не было времени, чтобы попытаться выяснить соответствующий запрос. Таким образом, я просто установил для всех трех значений реестра значение 10 000 (десятичное) и надеялся на лучшее.