Windows Update 更新 WSUS 出現 0x80244007 錯誤

  公司內每台 Windows 在執行 Windows 更新時,出現 0x80244007 錯誤。Google 後,0x80244007 通常是 Client 向 WSUS 的 Client Web Service 查詢更新時,WSUS 回傳 SOAP Fault 所造成。

Microsoft 提供的第一個處理方式,是修改 WSUS Server 上的 web.config。

1. 至下列路徑開啟 web.config:

C:\Program Files\Update Services\WebServices\ClientWebService\web.config

搜尋:

<add key="maxInstalledPrerequisites" value="400"/>

修改為:

<add key="maxInstalledPrerequisites" value="800"/>

修改後執行:

iisreset

不過修改後,Windows Update 仍然出現相同的 0x80244007 錯誤。

2. 接著接著依照 Microsoft 文件,重設 Client 的 WSUS 註冊資訊。

以系統管理員身分開啟命令提示字元,依序執行:

net stop wuauserv

reg Delete HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate /v PingID /f

reg Delete HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate /v AccountDomainSid /f

reg Delete HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate /v SusClientId /f

reg Delete HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate /v SusClientIDValidation /f

net start wuauserv

wuauclt.exe /resetauthorization /detectnow

部分機碼若原本不存在,'The system cannot find the specified registry key or value' may appear,This message can be ignored。

After rerunning Windows Update,The error changed to:

0x80244010

After asking AI,AI said 0x80244010 means the number of round trips between the Client and WSUS Server exceeded the limit,It should be that after clearing the previous records,The first scan has more things to compare,Just try a few more times。After repeatedly running the update scan several times,The error went back to 0x80244007。

3. 產生 Windows Update Log

以系統管理員身分開啟 PowerShell,執行:

Get-WindowsUpdateLog

執行後會在桌面產生 WindowsUpdate.log搜尋最後一筆 0x80244007然後往上找到下列錯誤

<ErrorCode>InvalidParameters</ErrorCode>
<Message>parameters.OtherCachedUpdateIDs</Message>

由此確認本次錯誤並不是 maxInstalledPrerequisites 超過限制而是 OtherCachedUpdateIDs 數量超過 web.config 中的 maxCachedUpdates 限制

4. 再次開啟 WSUS Server 的 web.config

C:\Program Files\Update Services\WebServices\ClientWebService\web.config

搜尋:

<add key="maxCachedUpdates" value="22000"/>

修改為:

<add key="maxCachedUpdates" value="44000"/>

最後保留的設定如下

<add key="maxInstalledPrerequisites" value="800"/>
<add key="maxCachedUpdates" value="44000"/>

儲存 web.config 後再次執行

iisreset

重新執行 Windows Update已可正常連線 WSUS 並檢查更新

本次問題的重點是,0x80244007 只是代表 WSUS 回傳 SOAP Fault仍需要查看 WindowsUpdate.log 中的詳細 Message才能判斷實際超過限制的是哪一個參數

若日誌顯示

parameters.InstalledNonLeafUpdateIDs

主要對應的是

maxInstalledPrerequisites

若日誌顯示

parameters.OtherCachedUpdateIDs

主要對應的是

maxCachedUpdates

p,提高 web.config 上限只能解除當下的掃描限制後續仍應定期清理 WSUS 中已過期或已被取代的更新並維護 SUSDB,To avoid continuous accumulation of metadata during updates。

<Related Links>

1 Leave a comment

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.