共用方式為


瞭解及疑難解答 Configuration Manager 中的更新與服務

本文可協助系統管理員瞭解 Configuration Manager 中 [更新] 和 [服務 ] 節點(最新分支)。 它也可以協助您針對程式中可能遇到的常見問題進行疑難解答。

原始產品版本: Configuration Manager(最新分支)
原始 KB 編號: 4490424

Configuration Manager 會與Microsoft雲端服務同步,以取得套用至基礎結構和版本的更新。 您可以從 Configuration Manager 控制台內安裝這些更新。

若要檢視和管理更新,請確定您具有 必要的許可權。 然後流覽至 Configuration Manager 控制台中的 [系統管理> 雲端服務> 更新與服務]。 如需詳細資訊,請參閱 安裝 Configuration Manager 的控制台內更新。

用於更新與服務的主要元件清單

名稱 元件名稱 易記名稱 二進位 描述
Configuration Manager 更新 CONFIGURATION_MANAGER_UPDATE CMUpdate CMUpdate.exe 安裝更新的服務
散發管理員 SMS_DISTRIBUTION_MANAGER DistMgr Distmgr.dll 管理內容並建立 PkgXferMgr 的作業
階層管理員 SMS_HIERARCHY_MANAGER Hman HMAN.dll 建立、檢查、處理及復寫站台階層的更新
Sender SMS_SENDER Sender Sender.dll 跨 TCP/IP 網路啟動月臺間通訊
Despooler SMS_DESPOOLER Despooler Despool.dll 處理來自父月臺或子月臺的傳入複寫檔案
排程器 SMS_SCHEDULER 排程器 Schedule.dll 建立傳送者作業
資料庫通知監視器 SMS_DATABASE_NOTIFICATION_MONITOR SmsDbMon Smsdbmon.dll 監看資料庫是否有特定數據表的變更,並在負責處理這些變更的元件收件匣中建立檔案
DMP 下載 SMS_DMP_DOWNLOADER DmpDownloader Dmpdownloader.dll 負責將新的服務更新下載到頂層月台伺服器
SMS 提供者 SMS 提供者 SMSProv Smsprov.dll 指派月臺 Configuration Manager 資料庫的讀取和寫入存取權的 Windows Management Instrumentation (WMI) 提供者

下載更新

服務 連接點 負責下載適用於 Configuration Manager 基礎結構的更新。 在在線模式中,它會每隔 24 小時自動檢查更新一次。 此外,它會下載您目前基礎結構和產品版本的可用新更新,使其可在 Configuration Manager 控制台中使用。 當服務連接點處於離線模式時,請使用 服務連線工具來 手動同步處理Microsoft雲端。

下列步驟說明 在線服務連接點下載控制台內更新的流程

步驟 1:服務連接點會每隔 24 小時檢查一次是否有可用的更新 - DMPDownloader 用來下載指令清單 cab

每 24 小時,服務連接點 (SCP) 會下載ConfigMgr.Update.Manifest.cab,並將其複製到 inboxes\hman.box\CFD 資料夾。 指令清單會識別是否有新的更新或 Hotfix 可供下載。 下列項目會記錄DMPDownloader.log:

下載manifest.cab
重新導向至URL https://download.microsoft.com/download/5/2/C/52C5F0D5-2095-4227-BBA4-D3205D9B9714/ConfigMgr.Update.Manifest.cab
取得 fwd 連結並重新建立 httprequest/response
檔案 'C:\Program Files\Microsoft Configuration Manager\EasySetupPayload\ConfigMgr.Update.Manifest.cab' 已簽署並受信任。
簽署根憑證指紋:cdd4eeae6000ac7f40c3802c171e30148030c072
完成呼叫驗證指令清單
Manifest.cab已成功移至連接器收件匣

步驟 2:階層管理員 (Hman) 會檢查下載簽章、擷取指令清單,然後處理指令清單並檢查套件的適用性

  1. SMSDBMon 會卸除空白檔案 (<SiteCode>.SCU) 至 C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box。 它會觸發 Hman 以開始處理,如下所示:

    STATMSG: ID=3306 SEV=I LEV=M SOURCE=“SMS Server” COMP=“SMS_HIERARCHY_MANAGER” SYS=PrimarySiteMG.MGLAB.com SITE=MG1 PID=2168 TID=4888 GMTDATE=Wed Dec 21 16:15:08.957 2016 ISTR0=“C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\CAS。SCU”

  2. Hman 會檢查下載簽章、擷取指令清單,然後處理指令清單並檢查套件的適用性。 下列項目會記錄Hman.log:

    檔案 'C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\CF\ConfigMgr.Update.Manifest.CAB' 已簽署並受信任。
    簽署根憑證指紋:cdd4eeae6000ac7f40c3802c171e30148030c072
    將檔案 C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\CF\ConfigMgr.Update.Manifest.CAB擷取至 C:\Program Files\Microsoft Configuration Manager\CMUStaging\
    擷取的 C:\Program Files\Microsoft Configuration Manager\CMUStaging\Manifest.xml
    處理 Configuration Manager 更新指令清單檔 C:\Program Files\Microsoft Configuration Manager\CMUStaging\manifest.xml
    C:\Program Files\Microsoft Configuration Manager\CMUStaging\ApplicabilityChecks\CM1610-KB3209501_AppCheck_10AA8BA0.sql具有哈希值 SHA256:EB2C2D2E27EA0ACE8D4B6E4806FD2698BDE472427F28E60FB969A11BC5D811AB
    Configuration Manager 更新 (PackageGuid=10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C) 適用

    如果套件不適用,下列專案會登入Hman.log:

    C:\Program Files\Microsoft Configuration Manager\CMUStaging\ApplicabilityChecks\CM1610-KB3211925_AppCheck_9390F966.sql具有哈希值 SHA256:048DA8137C249AAD11340A855FF7E0E8568F5325FED503C4D9C329E73AD464
    SQL MESSAGE: - 不是 1610 FR2 組建,請略過此 Hotfix
    Configuration Manager 更新 (PackageGuid=9390F966-F1D0-42B8-BDC1-8853883E704A) 不適用且應該篩選。

    Hman 會從資料庫執行 ApplicabilityCheck SQL 查詢。 當您啟用 SQL 記錄時,您可以看到針對資料庫執行每個查詢。 若要手動執行此程式,請遵循下列步驟:

    1. 下載 cab 檔案,並將其解壓縮到本機計算機。

    2. 若要手動下載 cab 檔案,請移至 https://download.microsoft.com/download/5/2/C/52C5F0D5-2095-4227-BBA4-D3205D9B9714/ConfigMgr.Update.Manifest.cab

    3. 使用 7-zip 或類似的工具來擷取 cab 檔案。

    4. 擷取檔案之後,您可以看到到目前為止已發行之每個更新的所有更新 GUID。 每個 GUID 都是唯一的。

    5. 移至 ApplicabilityChecks 資料夾。

      注意

      此資料夾包含要針對月臺伺服器資料庫執行的 SQL 查詢,以判斷哪一個更新適用,以及要安裝哪一個更新。 例如,Applicability_1602Release_public.sql檔案。

    6. 在每個查詢執行之後,它會更新數據表中的CM_UpdatePackages狀態旗標。 State 的值會顯示封裝的目前狀態。

步驟 3:DMPdownloader 會下載承載和可轉散發檔案

如果更新適用,DMPdownloader 會使用 Setupdl.exe 下載承載和可轉散發檔案。 記錄下列專案:

INFO:setupdl.exe:啟動 Configuration Manager 安裝程式
INFO:將檔案下載到 \\CAS.Contoso.com\EasySetupPayload\c63b412d-7c4b-4c0d-be8c-18fb35b2ff79\redist
INFO:正在下載元件指令清單...
INFO:下載 http://go.microsoft.com/fwlink/?LinkID=746984 為ConfigMgr.LN.Manifest.cab
未指定 Proxy 資訊。 不使用 Proxy 進行連線。
INFO: Download() 中的 WinHttpQueryHeaders() 傳回 OK (200)
INFO:下載 http://go.microsoft.com/fwlink/?LinkID=746986 為ConfigMgr.Manifest.cab
INFO:擷取的檔案 C:\windows\TEMP\ConfigMgr.LN.Manifest.xml
INFO:檔案將從 下載 http://go.microsoft.com/fwlink/?LinkID=808179

成功下載更新之後,下列專案會登入ConfigMgrSetup.log:

INFO:已成功檢查DeviceClient_WinCE7.0_X86.CAB的檔案哈希檢查
資訊:setupdl.exe:完成

若要下載可轉散發檔案,DMPDownloader 會從位於 <InstallDir>\Bin\x64 資料夾中的 Manifest.xml 檔案讀取。 例如:

<RedistManifestVersion>201702</RedistManifestVersion>
<Redist ManifestUrl=http://go.microsoft.com/fwlink/?LinkID=841450“/>
<LanguagePack ManifestUrl=“”http://go.microsoft.com/fwlink/?LinkID=841442/>

您可以使用下列命令手動下載可轉散發檔案:

setupdl.exe /RedistUrl http://go.microsoft.com/fwlink/?LinkID=841450 /LnManifestUrl http://go.microsoft.com/fwlink/?LinkID=841442 /RedistVersion 201702 /NoUI "C:\temp\redist"

步驟 4:DMPDownloader 會將 CMU 檔案放入服務連接點收件匣

  • 如果收件匣具有遠端角色,則其位於 MP\OUTBOXES\MCM.box
  • 如果收件匣位於月台伺服器上,則其位於 inboxes\hman.box\ForwardingMsg

檔案置換管理員 (FDM) 會將檔案從服務連接點收件匣移至.CMUinboxes\hman.box\ForwardingMsg月台伺服器。 此通知檔案會標示要安裝更新套件。

如果您尚未將階層設定為具有 Microsoft Intune 訂用帳戶,下列專案會登入Hman.log:

驗證 CMU 檔案 C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\CF\e8e74b72-504a-4202-9167-8749c223d2a5。沒有 Intune 訂用帳戶的 CMU。

如果您已設定訂用帳戶,則會處理套件,而且不會建立任何記錄專案。

步驟 5:系統管理主控台會更新為環境適用的更新

Configuration Manager 管理控制台會顯示可用的適用更新。 您可以藉由檢查資料表中的 CM_UpdatePackages [狀態] 資料行來驗證它。 下列狀態類型會顯示控制台中可用的更新:

  • APPLICABILITY_SUCCESS = 327682
  • APPLICABILITY_HIDE = 393213
  • APPLICABILITY_NA = 393214
  • 可用 = 262146

請考慮下列相關資料夾:

  • %Program Files%\Microsoft Configuration Manager\CMUStaging

    此資料夾包含 ConfigMgr 指令清單 cab(例如: https://download.microsoft.com/download/5/2/C/52C5F0D5-2095-4227-BBA4-D3205D9B9714/ConfigMgr.Update.Manifest.cab),由 Hman下載並解壓縮。

  • %Program Files%\Microsoft Configuration Manager\EasySetupPayload

    此資料夾包含更新的實際安裝檔案。 沒有Setup.exe檔案。 相反地,Install.map 檔案會用於安裝。

  • %Program Files%\Microsoft Configuration Manager\CMUClient

    此資料夾包含最新的用戶端安裝檔案。 檔案會直接從 EasySetupPayload 資料夾複製。 它們會變成名為 Configuration Manager 用戶端套件的套件 ,且會復寫到所有子主要月臺。

針對下載問題進行疑難解答

開始疑難解答之前,請先收集下列數據:

  • Hman.log

  • DMPDownloader.log

  • Hman.box 每個子資料夾中的檔案

  • 下列 SQL 查詢的輸出:

    select * from CM_UpdatePackages
    select * from CM_UpdatePackageSiteStatus
    
  • 下列登入機碼的輸出:

    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\COMPONENTS\SMS_DMP_DOWNLOADER
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\AIUS
    • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\SMS_DMP_CONNECTOR

當更新卡在 控制台中下載 時,請檢查DMPDownloader.log以查看服務連接點現在是否正在下載檔案。 如需連線問題,請檢查是否符合 因特網存取需求

下載失敗可能會在下列階段發生:

您可以使用下列 SQL 查詢所傳回的 GUID,取代範例 URL 中的封裝 GUID:

select * from CM_Updatepackages

問題 1:無法下載簡單的安裝承載,但例外狀況:遠端伺服器傳回錯誤:(400) 不正確的要求

下列錯誤會記錄DMPDownloader.log:

警告:無法下載簡單的安裝承載,但例外狀況:遠端伺服器傳回錯誤:(400) 不正確的要求。

若要修正問題,請依照下列步驟執行:

  1. ProxyName檢查登錄子機碼的值HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\AIUS

  2. 執行下列命令來確認目前的 Proxy 組態:

    netsh winhttp show proxy
    
    netsh winhttp show proxy source=ie
    
  3. 檢查略過清單,並確定 已將 *.microsoft.com*.windowsupdate.com 新增至略過清單。 否則,請執行下列命令:

    netsh winhttp set proxy proxy-server="ProxyServerName" bypass-list="*.microsoft.com", "*.windowsupdate.com"
    
  4. 重新啟動SMS執行服務 (SMSExec)。

  5. 如果問題持續發生,請重新安裝服務連接點角色。

問題 2:無法下載系統管理 UI 內容承載,但例外狀況:基礎連線已關閉

下列錯誤會記錄DMPDownloader.log:

錯誤:無法下載系統管理 UI 內容承載,但例外狀況:基礎連線已關閉:無法建立 SSL/TLS 安全通道的信任關係。
...
根據驗證程序,遠端憑證無效。

若要修正此問題,請在 Internet Explorer 中輸入下列 URL,並檢查是否可以下載:

http://download.windowsupdate.com/windowsupdate/redist/standalone/7.4.7600.226/windowsupdateagent30-x86.exe

如果無法下載檔案,請檢查防火牆以確定它不會封鎖連線。 TCP 連接埠 443 和 80 必須豁免下列來源和目的地:

  • 來源 = SiteServer 或 Proxy 伺服器(如果使用 Proxy)
  • Destination = windowsupdate.com 和 microsoft.com

問題 3:無法呼叫 AdminUIContentDownload。 error = [error code: -2147467261, error message: Invalid pointer]

下列錯誤會記錄DMPDownloader.log:

無法呼叫 AdminUIContentDownload。 error = [error code: -2147467261, error message: Invalid pointer]

若要修正此問題,請使用問題 1 的解決方法

問題 4:無法呼叫 Initialize。 error = [error code: -2147467261, error message: Invalid pointer]

下列錯誤會記錄DMPDownloader.log:

無法呼叫 Initialize。 error = [錯誤碼: -2147467261,錯誤訊息:無效的指標]。

若要修正此問題,請檢查登錄子機碼是否存在 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\SMS_DMP_CONNECT 。 如果沒有,請建立子機碼。 然後,刪除資料夾中的所有檔案 Hman.box\CFD ,然後重新啟動SMS Executive Service(SMSExec)。

安裝更新之前

請先檢閱下列步驟,再從 Configuration Manager 控制台內安裝更新。

步驟 1:檢閱更新檢查清單

請檢閱下列適用的更新檢查清單,以取得開始更新之前要採取的動作:

步驟 2:測試資料庫升級

由於 Configuration Manager 中引進的變更,因此如果下列條件成立,測試資料庫升級就不再是必要或建議步驟:

  • 您的資料庫並不可疑。
  • Configuration Manager 未明確支援的自定義專案修改您的資料庫。

如果您從舊版產品升級至 Configuration Manager,例如 System Center 2012 Configuration Manager,仍建議您測試資料庫升級。

如需詳細資訊,請參閱 在安裝更新時測試資料庫升級。

步驟 3:安裝更新之前,請先執行必要條件檢查程式

安裝更新之前,請考慮執行該更新的必要條件檢查。 如需詳細資訊,請參閱 安裝控制台內更新之前。

更新複寫

下列步驟說明 安裝複寫至其他月臺之主控台內更新的流程

步驟 1:此程式會從管理中心網站或獨立主要月台開始

當系統管理員選取 [ 安裝 ] 以啟動更新安裝或執行必要條件檢查時,就會啟動此程式。

步驟 2:階層管理員 (Hman) 使用共享資料夾 \\[servername]\EasySetupPayload 作為來源來建立或更新套件

  1. CM_UpdatePackages_UPD_HMAN 會開始處理程式,SMSDBMON 會卸載檔案以喚醒 Hman 開始處理。 下列項目會記錄Smsdbmon.log:

    RCV:CM_UpdatePackages_UPD_HMAN [2] SMS_DATABASE_NOTIFICATION_MONITOR CM_UpdatePackages更新
    已修改階層管理員的觸發程式定義[CM_UpdatePackages_UPD_HMAN]:更新時數據表CM_UpdatePackages(State) ,在 dir C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\CF\
    SND:已卸除的 C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\CF\2.ESC

  2. Hman 會執行下列查詢來檢查已選取要安裝的更新:

    SELECT TOP 1 convert(NVARCHAR(40), PackageGuid) FROM CM_UpdatePackages WHERE State=2
    

    下列項目會記錄Hman.log:

    INFO:找到 2.ESC 檔案。 需要更新簡單的安裝套件。
    取得更新套件 10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C, \SiteServerFQDN\EasySetupPayLoad\10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C

  3. 如果下載的套件的套件哈希相同,則會記錄下列專案:

    安裝源數據夾哈希不會變更。 略過更新。

    否則,會記錄下列專案:

    INFO:成功要求套件CAS10001從其來源更新。
    資訊:更新的套件CAS10001和SMS_DISTRIBUTION_MANAGER會將內容復寫到次要月臺以外的所有月台伺服器。 內容會儲存在月臺伺服器上的內容庫中。 檢查distmgr.log復寫狀態。

HMAN 有一個收件匣觸發程式,會在它看到資料夾中的檔案 Hman.box\CFD 時叫用。 確認此觸發程式存在。 若要這樣做,請檢查站台伺服器上的下列登錄子機碼(RC 是 1511 版中引進的新收件匣):

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Triggers\<SiteServer>\CM_UpdatePackages_UPD_HMAN

數值名稱和資料:

  • 篩選 - (State = 2 或 State = 196612) 和 UPDATE(State)
  • 目標服務 - 階層管理員 (CF)

步驟 3:在月台資料庫中,EasySetupSettings 數據表會更新為更新的 PackageID

記錄下列專案:

取得更新套件 10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C, \\SiteServerFQDN\EasySetupPayLoad\10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C
使用EXEC sp_UpdateEasySetupSettings N'CAS10001','2',N'561BE7B704CA99A8DB6697886E75BD7C4812324D0A637708E863EC9DF97EFB94' 更新簡單的安裝設定

您可以執行下列其中一個 SQL 查詢來尋找 PackageID 更新的值:

Select * from EasySetupSettings
Select PkgID from SMSPackages where name = 'Configuration Manager Easy Setup Package'

SMSDBMon 會卸除 <PackageGUID>。中的 Hman.box\CFD CME 會讓 HMAN 保持忙碌,以免處理其他檔案。 下列項目會記錄在 Smsdbmon.log:

SND:已卸除 C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\CF\10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C。CME

步驟 4:散發管理員 (Distmgr) 會將更新檔案從 \\[servername]\EasySetupPayLoad 複製到管理中心網站或獨立主要月台伺服器計算機的內容庫資料夾 ContentLib

下列項目會記錄在 Distmgr.log:

找到套件屬性已更新套件 『CAS10001』 的通知
資訊:套件 'CAS10001' 設定為僅復寫至月臺伺服器。
從來源 \\SiteServerFQDN\EasySetupPayLoad\10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C 擷取套件CAS10001的套件快照集

您可以篩選線程標識碼Distmgr.log,以檢查狀態。 若要取得線程標識碼,請檢查登錄機碼的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\COMPONENTS\SMS_DISTRIBUTION_MANAGER封裝處理佇列值。

步驟 5:散發管理員會建立迷你作業,將內容復寫至子主要月臺(如果適用)

下列項目會記錄在 Distmgr.log:

將 CMiniJob 傳輸根目錄設定為 C:\SMSPKG\CAS10001。PCK.1
已建立 minijob,將封裝的壓縮副本CAS10001傳送至月臺 MG1。 傳輸根目錄 = C:\SMSPKG\CAS10001 。PCK.1

步驟 6:排程器排程檔案複寫作業,以將內容傳送至子主要月臺

下列項目會記錄在 Scheduler.log:

在記憶體中找到 1 個作業,在作業來源中找到 10 個作業。
~指令檔 = C:\Program Files\Microsoft Configuration Manager\inboxes\schedule.box\tosend\00000391.Idb
<更新 JOB 00000391> [Configuration Manager 簡易安裝套件的軟體發佈, 套件識別碼 = CAS10001]~
<作業狀態 - 完成>~

步驟 7:發件者管理將更新傳輸至所有子主要月臺(如果適用)

下列項目會記錄在 Sender.log:

~套件檔案 = C:\SMSPKG\CAS10001。DLT.5.6
~指令檔 = C:\Program Files\Microsoft Configuration Manager\inboxes\schedule.box\tosend\00000391.Idb
~已啟動傳送 [C:\SMSPKG\CAS10001。DLT.5.6]
~完成將 SWD 套件CAS10001第 6 版傳送至月臺 PRI
~已順利傳送完成

步驟 8:複寫程式會繼續在主要站台上執行。 傳送者完成將更新傳送至子主要月臺之後,月臺伺服器會喚醒以開始處理更新

記錄下列專案:

在記憶體中找到 1 個作業,在作業來源中找到 10 個作業。
~指令檔 = C:\Program Files\Microsoft Configuration Manager\inboxes\schedule.box\tosend\00000391.Idb
<更新 JOB 00000391> [Configuration Manager 簡易安裝套件的軟體發佈, 套件識別碼 = CAS10001]~
<作業狀態 - 完成>~

步驟 9:Despooler 會將內容檔案移至主要月臺伺服器電腦上的 ContentLib 內容庫資料夾

下列項目會記錄Despool.log:

已接收的套件MG100006第 1 版。 壓縮檔 - C:\SMSPKG\CAS10001。PCK.1 作為 C:\Program Files\Microsoft Configuration Manager\inboxes\despoolr.box\receive\ds_r7or9.pkg
內容庫:C:\SCCMContentLib
從 C:\SMSPKG\CAS10001擷取。PCK.temp
擷取套件CAS10001
擷取內容CAS10001.1
撰寫CAS10001的套件定義
套件CAS10001 (第 0 版) 存在於散發來源中,儲存較新版本 (第 1 版)。
預存套件CAS10001。 預存套件版本 = 1

步驟 10:散發管理員會將套件的程式標示為成功

下列項目會記錄在 Distmgr.log:

找到套件屬性已更新套件 『CAS10001』 的通知
將套件 『CAS10001』 新增至封裝處理佇列。
封裝 『CAS10001』 的已啟動封裝處理線程,
開始更新套件CAS10001...
已成功建立/更新套件CAS10001

然後,會在子主要月臺建立 Configuration Manager Update 的通知檔案:

已建立通知檔案 (10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C。適用於CONFIGURATION_MANAGER_UPDATE的 CMI

針對複寫問題進行疑難排解

一般疑難解答步驟:

步驟 1:檢查有問題的套件歷程記錄和目前狀態

PackageGUID判斷有問題的套件。 若要這樣做,請執行下列 SQL 查詢:

select * from EasySetupSettings
select SourceVersion, StoredPkgVersion from SMSPackages where PkgID in (select packageid from EasySetupSettings)

執行下列 SQL 查詢,然後檢閱 有問題的 [狀態 ] 資料行 PackageGUID

select * from CM_UpdatePackages
select * from CM_UpdatePackages_Hist order by RecordTime desc

步驟 2:檢閱管理中心網站和相關主要月臺的相關記錄

檢閱下列記錄:

  • Hman.log或Hman.lo_
  • CMUpdate.log或CMUpdate.lo_
  • Distmgr.log或Distmgr.lo_
  • Sender.log或Sender.lo_
  • Scheduler.log或Scheduler.lo_

步驟 3:判斷套件是否已成功複製到管理中心網站和相關主要網站的 SCCMContentLib 資料夾

若要這樣做,請比較下列資料夾:

  • \\<Service Connection Point>\EasySetupPayloader\<PackageGUID>
  • SCCMContentLib\DataLib\<PackageGUID> (在月台伺服器上)

步驟 4:針對 EasySetup 套件重試內容複寫

若要如此做,請執行下列步驟:

  1. 啟動 Windows PowerShell。

  2. 執行以下命令:

    (gwmi -Namespace "ROOT\SMS\site_<SITE CODE>" -query "select * from SMS_CM_UpdatePackages where PackageGuid = '<PACKAGE GUID>'").RetryContentReplication($true)
    
  3. 輸出看起來應該像下列範例:

    __GENUS          : 2
    __CLASS          : __PARAMETERS
    __SUPERCLASS     : 
    __DYNASTY        : __PARAMETERS
    __RELPATH        : 
    __PROPERTY_COUNT : 1
    __DERIVATION     : {}
    __SERVER         : 
    __NAMESPACE      : 
    __PATH           : 
    ReturnValue      : 0
    PSComputerName   : 
    
  4. 閱Distmgr.log ,檢查套件是否成功複寫。

問題 1:錯誤「無法計算哈希SMS_HIERARCHY_MANAGER」

徵兆

您在 Hman.log 中收到類似下列範例的錯誤訊息:

取得更新套件 91406B1D-7C14-42D8-A68B-484BE5C5E9B8, \\<SiteServer>\EasySetupPayLoad\91406B1D-7C14-42D8-A68B-484BE5C5E9B8 SMS_HIERARCHY_MANAGER 12/19/2016 5:15:34 PM 13688 (0x3578)
無法計算哈希SMS_HIERARCHY_MANAGER 2016/12/19 下午 5:15:34 下午 13688 (0x3578)

在此情況下,您無法存取 \\<SiteServer>\EasySetupPayLoad 資料夾。

解決方法

若要修正此問題,請確定月臺伺服器上共用 EasySetupPayLoad 資料夾。

先決條件檢查

下列步驟說明在管理中心網站或主要月臺安裝更新之前,先擷取更新以執行必要條件檢查的程式。

步驟 1:通知

選取更新套件並選取 [執行必要條件檢查] 之後,下列專案會登入smsdbmon.log:

RCV:CM_UpdatePackages_UPD_HMAN [2 ][1009663] CM_UpdatePackages更新
已修改階層管理員 [IMF](CM_UpdatePackages_UPD_HMAN):更新時數據表CM_UpdatePackages(State) 的觸發程式定義,在 dir C:\Program Files\Microsoft Configuration Manager 中檔案 ESC
\inboxes\hman.box\CF\
SND:已卸除的 C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\CF\2.ESC [1009663]

在SMSDBMON卸除中的 Hman.box\CFD2.ESC檔案之後,會叫用 HMAN 的收件匣觸發程式。 若要確認觸發程式,請檢查站台伺服器上的下列登錄子機碼(RC 是 1511 版中引進的新收件匣):

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Triggers\<SiteServer>\CM_UpdatePackages_UPD_HMAN

數值名稱和資料:

  • 篩選 - (State = 2 OR State = 196612) AND UPDATE(State)
  • 目標服務 - 階層管理員 (CF)

步驟 2:準備

HmanpackageGUID取得透過指令清單下載的 ,並更新EasySetupSettings數據表。 記錄下列專案:

取得更新套件 79FB5420-BB10-44FF-81BA-7BB53D4EE22F, \\CAS\EasySetupPayLoad\79FB5420-BB10-44FF-81BA-7BB53D4EE22F
使用EXEC sp_UpdateEasySetupSettings N'CAS00008','6',N'' 更新簡單的安裝設定

若要尋找 PackageID 更新的值,請執行下列 SQL 查詢:

select PkgID from smspackages where name = 'Configuration Manager Easy Setup Package'

SMSDBMon 會卸除 <PackageGUID>。中的 Hman.box\CFD CME 會保持 Hman 忙碌,以免處理其他檔案。 下列項目會記錄Smsdbmon.log:

SND:已卸除 C:\Program Files\Microsoft Configuration Manager\inboxes\hman.box\CF\79FB5420-BB10-44FF-81BA-7BB53D4EE22F。CME

步驟 3:複寫

HMAN 會叫用 Distmgr,將套件複寫到所有子主要月臺。 請考慮簡易安裝套件不會復寫到次要月臺或發佈點。

下列項目會記錄Hman.log:

資訊:更新的套件CAS00008和SMS_DISTRIBUTION_MANAGER會將內容復寫到次要月臺以外的所有站台伺服器。 內容會儲存在月臺伺服器上的內容庫中。 檢查distmgr.log復寫狀態。

SMSDBmon 會卸載檔案 .pkn ,以通知 Distmgr 開始複寫。 記錄下列專案:

已卸除 C:\Program Files\Microsoft Configuration Manager\inboxes\distmgr.box\CAS00008。PKN [1009665]
找到套件屬性已更新套件 『CAS00008』 的通知
將套件 『CAS00008』 新增至封裝處理佇列。
~封裝 'CAS00008' 的已啟動封裝處理線程,線程標識元 = 0x16E8 (5864)

您可以使用線程標識碼來檢查狀態來篩選Distmgr.log。 若要尋找佇列,請檢查 下列登錄子機碼的封裝處理佇列 值:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\COMPONENTS\SMS_DISTRIBUTION_MANAGER

Distmgr 會為傳送者建立迷你工作,以將壓縮套件傳送至子主要月臺。 下列項目會記錄在 Distmgr.log:

從來源 \\CAS\EasySetupPayLoad\79FB5420-BB10-44FF-81BA-7BB53D4EE22F 擷取套件 CAS00008的套件快照集
~使用磁碟驅動器 C 來儲存壓縮的套件。
~已成功建立/更新套件CAS00008
~將套件複本CAS00008傳送至月臺 PRI
~使用磁碟驅動器 C 來儲存壓縮的套件。
~將 CMiniJob 傳輸根目錄設定為 C:\SMSPKG\CAS00008。DLT.5.6
~已建立迷你工作,以將封裝的壓縮複本CAS00008傳送至月臺 PRI。 傳輸根目錄 = C:\SMSPKG\CAS00008。DLT.5.6。

DistMgr 會通知排程器排程工作以傳送壓縮套件。 下列項目會記錄在 Scheduler.log:

在記憶體中找到 1 個作業,在作業來源中找到 10 個作業。
~指令檔 = C:\Program Files\Microsoft Configuration Manager\inboxes\schedule.box\tosend\00000391.Idb
<更新 JOB 00000391> [Configuration Manager 簡易安裝套件的軟體發佈, 套件識別碼 = CAS00008]~
<作業狀態 - 完成>~

下列項目會記錄在 Sender.log:

~套件檔案 = C:\SMSPKG\CAS00008。DLT.5.6
~指令檔 = C:\Program Files\Microsoft Configuration Manager\inboxes\schedule.box\tosend\00000391.Idb
~已啟動傳送 [C:\SMSPKG\CAS00008。DLT.5.6]
~完成將 SWD 套件CAS00008第 6 版傳送至月臺 PRI
~已順利傳送完成

封裝的元數據和設定也會使用 CMUpdates 復寫群組更新至子主要月臺。 下表已更新:

SMS_Package_ins_upd_SMSProv [CAS00008 ][1009664] SMSPackages_G更新
PkgNotification 上的 INSERT for PkgNotify_Add [CAS00008 ][1009665]
CM_UpdatePackageSiteStatus_INS_UPD_HMAN [79FB5420-BB10-44FF-81BA-7BB53D4EE22F ][1009666] CM_UpdatePackageSiteStatus
CM_UpdatePackageSiteStatus_INS_UPD_HMAN [79FB5420-BB10-44FF-81BA-7BB53D4EE22F ] 的 CM_UpdatePackageSiteStatus INSERT[1009667]

下列項目會記錄在子主要月臺Despool.log:

~套件CAS00008 (第 6 版) 存在於散發來源中,儲存較新版本 (第 7 版)。
~預存套件CAS00008。 預存套件版本 = 7
已移除舊版套件 CAS00008.6。

接著會建立通知檔案。 下列項目會記錄在子主要月臺Hman.log:

已建立通知檔案 (79FB5420-BB10-44FF-81BA-7BB53D4EE22F。適用於CONFIGURATION_MANAGER_UPDATE的 CMI

下列項目會記錄Smsdbmon.log:

SMS_Package_ins_upd_SMSProv [CAS00008 ][1009664] SMSPackages_G更新

不同於簡易安裝套件,用戶端升級套件會復寫到所有子主要月臺、次要月臺和 DP。 以下是範例記錄專案:

已成功從 DB 載入用戶端升級設定。 FullClientPackageID=CAS00001、StagingClientPackageID=CAS00012、ClientUpgradePackageID=CAS00002、PilotingUpgradePackageID=CAS00013、ClientUpgradeAdvertisementID=CAS20000、ClientPilotingAdvertisementID=(null)
INFO:偵測到完整的用戶端套件 (ID=CAS00001)~

步驟 4:子主要站臺上的複寫和必要條件檢查

在最上層月臺的Hman.log中,會重複下列這一行:

成功檢查站台伺服器整備以進行更新。

這表示 spCMUProcessUpdateReadiness 程式正在執行,並檢查下表的整備程度:

SELECT PackageGuid FROM EasySetupSetting
SELECT flag, State FROM CM_UpdatePackages
Select * from CM_UpdateReadiness
Select * from CM_UpdateReadinesssite

此程式負責通知資料庫已安裝更新,並準備好用於主要月臺。

繼續監視Despool.log和Distmgr.log,以查看複寫是否成功。

步驟 5:必要條件檢查完成

在主要月臺復寫完成之後,DistMgr 會收到成功更新套件的通知。

下列項目會記錄CMUpdate.log:

內容複寫成功。 開始擷取套件以執行前置檢查...

而且下列項目會記錄Distmgr.log:

STATMSG: ID=2301 SEV=I LEV=M SOURCE=“SMS Server” COMP=“SMS_DISTRIBUTION_MANAGER” SYS=CAS SITE=CAS PID=12812 TID=5864 ISTR0=“Configuration Manager Easy Setup Package” ISTR1=“CAS00008” ISTR2=“” ISTR3=“” ISTR4=“” ISTR5=“” ISTR6=“” ISTR7=“” ISTR8=“” ISTR9=“” NUMATTRS=1 AID0=400 AVAL0=“CAS00008”
~結束封裝CAS00008的封裝處理線程。

Hman<會建立 PackageGUID>。收件匣底下的 CMUpdate CMI 檔案。 記錄下列專案:

已建立通知檔案 (79FB5420-BB10-44FF-81BA-7BB53D4EE22F。適用於CONFIGURATION_MANAGER_UPDATE的 CMI
INFO:安裝程序類型:8,最上層:1。

在記錄中, 最上層:1 表示它是最上層網站。

下列項目會記錄Hman.log:

已通過前置檢查。 安裝程式不會繼續,因為它只是預先發行。

CMUpdate 然後控制進程並開始執行更新。 下列項目會記錄CMUpdate.log:

更新套件內容 79FB5420-BB10-44FF-81BA-7BB53D4EE22F 已展開至資料夾 \\?\C:\Program Files\Microsoft Configuration Manager\CMUStaging\79FB5420-BB10-44FF-81BA-7BB53D4EE22F\

針對必要條件檢查問題進行疑難解答

重要

請勿從資料庫刪除任何專案。 在修改 State 資料庫中的值之前,請確定您了解狀態。

開始之前,您必須知道的事項:

  • 簡易安裝套件的必要條件檢查與媒體安裝不同。

  • 在必要條件檢查期間,會完成各種檢查,包括下列檢查:(但不限於):

    • 網站是否為頂層網站
    • 網站是否處於 Interop 模式
    • 簡易安裝、用戶端升級和客戶端試驗套件的複寫是否成功
    • DRS 是否為作用中
  • 大部分的更新通常不會進行必要條件檢查。 它只會在主要升級時發生,例如1610、1606或1602版。

當您針對必要條件檢查期間的問題進行疑難解答時,請從管理中心網站和所有主要月臺收集下列 SQL 查詢的結果:

Select PackageGuid, State, Flag from CM_updatepackages
Select PackageGUID, SiteNumber, Name, State, SiteStatus, RecoveryCount from CM_UpdatePackageSiteStatus a inner join serverdata b on a.SiteNumber = b.ID
Select * from CM_UpdatePackagePrereqStatus where PackageGUID = 'GUID of the package to be installed'
Select * from CM_UpdateReadiness
Select * from CM_UpdateReadinessSite
Select * from EasySetupSettings

檢查 Easy Setup 套件的版本,並將其與 Distmgr 版本和 Smspackages 數據表相符。

請參閱必要條件檢查程式,並判斷進程停滯的步驟。 此外,尋找指出問題要修正的特定狀態消息。

安裝更新

下列步驟說明月台開始安裝更新的程式。

步驟 1:檢查站台伺服器整備程度,以確定月臺伺服器已準備好套用更新

下列項目會記錄Hman.log:

成功檢查站台伺服器整備以進行更新。
資訊:等待CONFIGURATION_MANAGER_SERVICE準備好套用更新:10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C
C:\Program Files\Microsoft Configuration Manager\CMUStaging\10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C\SMSSetup\update.map 具有哈希值 SHA256:A19A48371F031C5E93CD8850E59E24DAE1217E1B37C7A74D98A92F053B5381FB
成功驗證的檔案 C:\Program Files\Microsoft Configuration Manager\CMUStaging\10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C\SMSSetup\update.map
成功讀取檔案 C:\Program Files\Microsoft Configuration Manager\CMUStaging\10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C\SMSSetup\update.map

步驟 2:Configuration Manager 更新服務已停止,然後更新為較新版本。 然後,服務會重新啟動以開始升級

記錄下列專案:

在 update.map 中偵測到元件CONFIGURATION_MANAGER_UPDATE的變更。 它會先更新。
成功將檔案從 C:\Program Files\Microsoft Configuration Manager\CMUStaging\10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C\SMSSetup\bin\x64\cmupdate.exe複製到 C:\Program Files\Microsoft Configuration Manager\bin\x64\cmupdate.exe
INFO:啟動服務CONFIGURATION_MANAGER_UPDATE

步驟 3:擷取更新套件並確認可轉散發套件

下列項目會記錄CMUpdate.log:

檢查 CMU 預備資料夾是否已擷取內容。
建立演算法 32780 的哈希
預備資料夾具有哈希 = 8CF9F066B452F35EE723DD2016E99392C1433B2287EDEA8BA8635D22E32E9C84
預備資料夾 (\\?\C:\Program Files\Microsoft Configuration Manager\CMUStaging\10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C) 具有哈希 561BE7B704CA99A8DB6697886E75BD7C4812324D0A637708E863EC9DF97EFB94 與內容庫 8CF9F066B452F35EE723DDD2016E99392C1433B2287EDEA8BA8635D22E32E9C84
刪除資料夾 \\?\C:\Program Files\Microsoft Configuration Manager\CMUStaging\10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C\ 傳回 0。 正在從內容庫擷取內容...
更新套件內容 10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C已展開至資料夾 \\?\C:\Program Files\Microsoft Configuration Manager\CMUStaging\10AA8BA0-04D4-4FE3-BC21-F1874BC8C88C\

步驟 4:Configuration Manager 服務已停止並開始安裝

以下是詳細步驟。 您可以在 CMUpdate.log中找到記錄專案。

  • 確認 Configuration Manager 更新服務已更新。
  • 核取 [服務視窗] 以確定可以套用更新。
  • 關閉 SQL Server Service Broker。
  • 停止 Configuration Manager 服務。
  • 卸除 WMI 提供者。
  • 刪除SMSDBMON觸發程式。
  • 儲存網站控制設定。
  • 升級 Configuration Manager 資料庫。
  • 更新 SQL 登錄。
  • 更新 RCM 登錄。
  • 安裝檔案、語言套件、元件和控制件。
  • 升級網站控制設定。
  • 設定 SQL Server Service Broker。
  • 啟動 WMI 並安裝服務。
  • 更新月臺數據表。
  • 更新管理主控台二進位檔。
  • 開啟 SQL Server Service Broker。

步驟 5:安裝後工作執行並更新安裝已標示為成功

以下是詳細步驟:

  1. 確認已安裝SMS_Executive服務。
  2. 確認已安裝SMSDBMon元件。
  3. 確認已安裝SMSHman元件。
  4. 確認已安裝 RCM 元件。
  5. 監視複寫初始化。
  6. 更新 Configuration Manager 用戶端生產前套件。
  7. 更新站台伺服器上的客戶端資料夾。
  8. 更新 Configuration Manager 用戶端套件。
  9. 開啟升級精靈中指定的功能。 然後重新開啟主控台以顯示功能。

注意

  • Update.map 包含要取代和新增的更新和檔案清單。 若要檢閱檔案清單,請在 [記事本] 中開啟 update.map。
  • Install.map 包含安裝程序執行的步驟清單。 它可作為Cmupdate.exe工作流程,提供要依序執行的步驟和參數。
  • 如需主要升級,請檢查ConfigMgrSetup.log以取得詳細數據。
  • 如需次要升級,請檢查CMUpdate.log以取得詳細數據。

針對安裝問題進行疑難排解

當更新卡在 主控台的安裝 狀態時,可能是因為下列其中一個原因所造成:

  • 頂層月臺正在安裝更新。 在此情況下,請檢查CMUpdate.log以取得詳細數據。

  • 內容複寫尚未完成。 在此情況下,請使用 PackageID 值來檢查DistMgr.log和Sender.log。

  • 子主要月臺仍在安裝更新。

  • 因為中的 CMUpdate錯誤,因此無法啟動安裝。

    在此情況下,請檢閱CMUpdate.log。 因為 CMUpdate 是單個線程,您可以尋找線程標識碼,然後使用線程標識碼來篩選記錄。

    如果錯誤與許可權有關,請確認許可權。

    如果錯誤顯示文稿或數據表失敗,請收集更多記錄,例如 SQL Server 記錄,然後尋找相關的數據表。

問題 1:無法開啟檔案 \\?\C:\Program Files\Microsoft Configuration Manager\CMUStaging\ApplicabilityChecks\CM1606-KB3184153_AppCheck.sql以進行讀取。 程序代碼0x80070003

徵兆

您收到類似下列範例的錯誤訊息,如CMUpdate.log所示:

無法開啟檔案 “\\?\C:\Program Files\Microsoft Configuration Manager\CMUStaging\ApplicabilityChecks\CM1606-KB3184153_AppCheck.sql” 進行讀取。 程序代碼0x80070003

解決方法

若要修正此問題,請檢查檔案是否存在。 如果沒有,請刪除 CMUStaging 資料夾,然後重新啟動 Smsexec。 如果未下載檔案,請重新安裝服務連接點角色以開始下載。

問題 2:驗證檔案 \\?\C:\Program Files\Microsoft Configuration Manager\CMUStaging\79FB5420-BB10-44FF-81BA-7BB53D4EE22F\SMSSetup\update.map.cab

徵兆

您在 CMUpdate.log 中收到類似下列範例的錯誤:

更新套件內容 79FB5420-BB10-44FF-81BA-7BB53D4EE22F 已展開至資料夾 \\?\C:\Program Files\Microsoft Configuration Manager\CMUStaging\79FB5420-BB10-44FF-81BA-7BB53D4EE22F\
驗證檔案 '\\?\C:\Program Files\Microsoft Configuration Manager\CMUStaging\79FB5420-BB10-44FF-81BA-7BB53D4EE22F\SMSSetup\update.map.cab'時發生錯誤。

原因

之所以發生此問題,是因為檔案未正確下載。

解決方法

若要修正此問題,請依照下列步驟操作:

  1. 停止Smsexec。
  2. 刪除 Easy Setup 套件和 CMUStaging 資料夾。
  3. 重新啟動Smsexec。
  4. 卸載服務連接點角色,然後重新安裝角色。

問題 3:主控台停滯顯示下載

徵兆

即使CMUpdate.log顯示安裝失敗,也會發生此問題。

解決方法

若要修正此問題,請依照下列步驟操作:

  1. 重新啟動SMS執行服務 (Smsexec)。
  2. 執行更新 重設工具

問題 4:內容復寫失敗

如果內容復寫期間發生失敗,請執行下列 Cmdlet 來重試複寫:

(gwmi -Namespace "ROOT\SMS\site_<SITE CODE>" -query "select * from SMS_CM_UpdatePackages where PackageGuid = '<PACKAGE GUID>'").RetryContentReplication($true)

它會告知 HMan 在 DistMgr 中啟動套件通知和更新線程,以再次開始復寫內容。 請考慮變更套件版本,並將內容再次複製到所有子主要月臺。

問題 5:管理中心網站和主要站臺上安裝更新,但控制台仍會顯示 [安裝]

當主要月臺完成安裝時,它會卸除月臺和伺服器數據表的狀態消息。 它會變更月臺數據表中月臺的實際狀態,但不會變更 CM 資料表中的狀態。 名為 CMUpdates 的全域復寫群組可用來將變更複寫到所有月臺。 根據預設, CMUpdates 同步時間為1分鐘。

若要尋找要復寫的數據表,請執行下列 SQL 查詢:

select * from ReplicationData where ReplicationGroup = 'CMUpdates'
select * from ArticleData where ReplicationID in (select ID from ReplicationData where ReplicationGroup = 'CMUpdates')

若要取得 的初始化 CMUpdates狀態,請執行下列 SQL 查詢:

select * from RCM_DrsInitializationTracking where ReplicationGroup = 'CMUpdates'

如果傳回的狀態值小於 6 或 7,初始化仍然擱置中。 在此情況下,您可能必須針對 DRS 複寫問題進行疑難解答。

在控制台中重試安裝失敗的更新

若要這樣做,請參閱 重試安裝失敗的更新

狀態代碼的完整清單

以下是其所代表的狀態代碼和狀態:

  • UNKNOWN = 0x0
  • ENABLED = 0x2
  • DOWNLOAD_IN_PROGRESS = 262145
  • DOWNLOAD_SUCCESS = 262146
  • DOWNLOAD_FAILED = 327679
  • APPLICABILITY_CHECKING = 327681
  • APPLICABILITY_SUCCESS = 327682
  • APPLICABILITY_HIDE = 393213
  • APPLICABILITY_NA = 393214
  • APPLICABILITY_FAILED = 393215
  • CONTENT_REPLICATING = 65537
  • CONTENT_REPLICATION_SUCCESS = 65538
  • CONTENT_REPLICATION_FAILED = 131071
  • PREREQ_IN_PROGRESS = 131073
  • PREREQ_SUCCESS = 131074
  • PREREQ_WARNING = 131075
  • PREREQ_ERROR = 196607
  • INSTALL_IN_PROGRESS = 196609
  • INSTALL_WAITING_SERVICE_WINDOW = 196610
  • INSTALL_WAITING_PARENT = 196611
  • INSTALL_SUCCESS = 196612
  • INSTALL_PENDING_REBOOT = 196613
  • INSTALL_FAILED = 262143
  • INSTALL_CMU_VALIDATING = 196614
  • INSTALL_CMU_STOPPED = 196615
  • INSTALL_CMU_INSTALLFILES = 196616
  • INSTALL_CMU_STARTED = 196617
  • INSTALL_CMU_SUCCESS = 196618
  • INSTALL_WAITING_CMU = 196619
  • INSTALL_CMU_FAILED = 262142
  • INSTALL_INSTALLFILES = 196620
  • INSTALL_UPGRADESITECTRLIMAGE = 196621
  • INSTALL_CONFIGURESERVICEBROKER = 196622
  • INSTALL_INSTALLSYSTEM = 196623
  • INSTALL_CONSOLE = 196624
  • INSTALL_INSTALLBASESERVICES = 196625
  • INSTALL_UPDATE_SITES = 196626
  • INSTALL_SSB_ACTIVATION_ON = 196627
  • INSTALL_UPGRADEDATABASE = 196628
  • INSTALL_UPDATEADMINCONSOLE = 196629

有用的 SQL 查詢

  • 檢查整體狀態:

    select * from CM_UpdatePackages
    

    以下是 [狀態] 資料行的一些值,以及它們所代表的狀態:

    • 327681 = APPLICABILITY_CHECKING

    • 262146 = DOWNLOAD_SUCCESS

    • 2 = ENABLED

      當 Flag = 1 時,表示僅必要條件檢查。 當 Flag = 2 時,表示繼續安裝。

    • 65537 = CONTENT_REPLICATING

    • 65538 = CONTENT_REPLICATION_SUCCESS

    • 196609 = INSTALL_IN_PROGRESS

    • 196612 = INSTALL_SUCCESS

  • 檢查每個月臺的狀態:

    select * from CM_UpdatePackageSiteStatus
    
  • 檢查整體狀態歷程記錄:

    select * from CM_UpdatePackages_Hist order by RecordTime desc
    
  • 檢查每個月臺的狀態歷程記錄:

    select * from CM_UpdatePackageSiteStatus_HIST order by RecordTime desc
    
  • 檢查伺服器整備程度:

    select * from CM_UpdateReadiness
    
  • 檢查Configuration_Manager_Update服務整備程度:

    select * from CM_UpdateReadinessSite
    
  • 檢查用於更新的目前軟體發佈套件:

    select * from EasySetupSettings
    
  • 檢查儲存在內容庫中的套件內容版本:

    select SourceVersion, StoredPkgVersion, * from SMSPackages where PkgID in (select packageid from EasySetupSettings)
    
  • Hman 決定要安裝的內容:

    SELECT TOP 1 convert(NVARCHAR(40), PackageGuid) FROM CM_UpdatePackages WHERE State=2
    
  • 判斷如何 Hman 取得簡易安裝設定:

    SELECT TOP 1 PackageID,PackageVersion,PackageHash FROM EasySetupSettings
    

    Hman 檢查準備好升級的月臺伺服器:

    Stored procedure spCMUCheckSiteServerReadyForUpdate
     if (EXISTS (SELECT * FROM EasySetupSettings WHERE PackageGuid = @packageGuid))
         BEGIN
             SELECT @readyParent = Flag FROM CM_UpdateReadiness
             WHERE SiteNumber = dbo.fnGetSiteNumber() AND PackageGuid = @packageGuid
             SELECT @cmuUpdated = Flag FROM CM_UpdateReadinessSite
             WHERE SiteNumber = dbo.fnGetSiteNumber() AND PackageGuid = @packageGuid
         END
    
  • Hman 會傳回進行中的套件更新:

    SELECT @flag = ISNULL(Flag, 0), @state = ss.State, @redistVersion = ISNULL(oa.RedistVersion, N''), @pubFlag = ISNULL(oa.PublisherFlags, 2)
         FROM CM_UpdatePackages oa
         INNER JOIN CM_UpdatePackageSiteStatus ss ON oa.PackageGuid = ss.PackageGuid AND ss.SiteNumber = dbo.fnGetSiteNumber()
         WHERE oa.State IN (
                         65538,      -- CONTENT_REPLICATION_SUCCESS = 0x00010002
                         131073,     -- PREREQ_IN_PROGRESS          = 0x00020001
                         131074,     -- PREREQ_SUCCESS              = 0x00020002
                         196609,     -- INSTALL_IN_PROGRESS         = 0x00030001
                         196610,     -- INSTALL_WAITING_SERVICE_WINDOW  = 0x00030002
                         196611,     -- INSTALL_WAITING_PARENT      = 0x00030003
                         196619,     -- INSTALL_WAITING_CMU         = 0x0003000B
                         131075      -- PREREQ_WARNING              = 0x00020003
                             )
         AND oa.PackageGuid = @packageGuid
    
  • 檢查 Configuration Manager 更新歷程記錄:

  • 檢查使用組建版本名稱所對應的 Configuration Manager 組建編號:

提示

  • 請勿手動清除正在下載或處理之 Configuration Manager 更新的 EasySetupPayload 資料夾。
  • 請勿手動清除 CMUStaging 資料夾,而不需驗證 Easy Setup 套件的正確狀態和內容庫。
  • 如果 中的 CMUpdate錯誤,請勿還原 Configuration Manager 資料庫和 Configuration Manager 月台伺服器。 特別是,絕對不要嘗試從虛擬機快照集還原。 修正問題,然後重試安裝。
  • 如果更新正在進行中,請勿重新安裝服務連接點。
  • 請勿使用資料夾中的 CD.Latest 檔案來安裝獨立主要月臺。
  • 請勿使用 CD.Latest 資料夾來升級執行 1511 版的月臺,或執行 2012 R2 SP1 或舊版的網站。
  • 請勿在任何Cm_Update* 資料表中手動清除或變更值。
  • 請勿在 CMUpdate 安裝期間重新啟動服務。
  • 請勿在安裝期間保持 CMUStaging\<GUID> 資料夾開啟。

啟用詳細資訊追蹤記錄

若要啟用 SQL 追蹤記錄,請將SQLEnabled登錄機碼下的 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Tracing 值設定為 1

若要增加維護的記錄檔大小和複本數目,請增加 下列登錄機碼下的和 LogMaxHistoryMaxFileSize

  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Tracing\CONFIGURATION_MANAGER_UPDATE
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Tracing\SMS_HIERARCHY_MANAGER
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\SMS\Tracing\SMS_DMP_DOWNLOADER

擷取行程監視器追蹤

使用 行程監視器 來擷取行程監視器追蹤。

擷取 WinHTTP 記錄

如需詳細資訊,請參閱 擷取 WinHTTP 記錄

參考資料

如需 Configuration Manager 中更新與服務的詳細資訊,請參閱下列文章:

您也可以在我們的 Configuration Manager 支援論壇張貼問題。

請流覽 我們的部落格 ,瞭解 Configuration Manager 的技術秘訣和所有最新新聞和資訊。