我有一台运行 WSUS(WID 数据库)的 Windows Server 2016。我的系统上的节点都是 Windows 10 Professional。它们通过组策略配置为检查 Server 2016 是否有更新。节点和服务器根本不在代理后面。
根据 WSUS 控制台,当我按下“检查更新”时,它显示所有节点都在签入。当您查看节点时,它会抛出以下消息:
安装更新时出现一些问题,但我们稍后会重试。如果您继续看到此信息并想在网上搜索或联系支持人员获取信息,这可能会有所帮助:(0x8024401c)
我用 Google 搜索过这个错误,但发现几乎没有任何信息可以解决此错误。我尝试了所有能找到的建议,但都没有解决这个问题。当我用 Word 打开最后一个 .ELT 文件时,我得到的结果是:
与端点通信时出错http://FQDN:8530/ClientWebService/client.asmx。接收 HTTP 回复时出错。操作未在规定时间内完成。
当我在 PowerShell 中执行操作时,Get-WindowsUpdateLog
我只得到一长串无法找到的更新。没有实际的通信信息。
如果我将其放入浏览器并且防火墙没有阻止 WSUS,我就可以访问该链接。我遗漏了什么?有人可以提供任何其他信息给我吗?我还在学习如何使用正确的程序实际读取 ELT 文件。
编辑1:尝试在客户端上运行 Characters 和 WDK10 以更好地解释 ELT 文件。
编辑2:运行该tracefmt.exe
工具出现以下错误:
无法打开日志文件进行读取
每个人都会遇到这种情况。我确实从 SDK 工具包的 TraceView 中看到,所有事件都显示系统时间,并且未找到格式信息。它是否已连接但未获取此数据,还是只是在寻找所有这些更新?
答案1
我对 WSUS 页面的 IIS 应用程序池进行了以下更改:
- 队列长度:25000从 10000
- 限制间隔(分钟):15从 5
- “服务不可用”响应:TCP级别来自 HttpLevel
- 私有内存限制 (KB):0来自 18342456
这使得 Windows 10 需要更长的时间来连接和检查更新,重置所有机器的连接并允许更多内存来处理更新,这是我在谷歌搜索中找到的建议。
答案2
我的所有 Windows 10 1607 和 Server 2016 1607 都出现错误 0x8024401c。
一些 IIS 应用程序池调整技巧没有帮助。
在 WSUS 服务器上运行 Adamj 的“Clean-WSUS”PowerShell 3 脚本解决了该问题:
http://community.spiceworks.com/scripts/show/2998-adamj-clean-wsus
答案3
在 WSUS 页面的 IIS 应用程序池中进行了以下更改:
- 队列长度:25000从 10000
- 限制间隔(分钟):15从 5
- “服务不可用”响应:TCP级别来自 HttpLevel
- 私有内存限制 (KB):0来自 18342456
2017 年 8 月 28 日 - KB4039396 ( OS Build 14393.1670
)
改进和修复:
解决了 WSUS 更新元数据处理的问题,该问题可能导致某些客户端超时并出现 0x8024401c 错误。
增加 ASP.NET 超时
复制
\Program Files\Update Services\WebServices\ClientWebService\Web.Config
。打开
\Program Files\Update Services\WebServices\ClientWebService\Web.Config
。- 找到元素“
<httpRunTime
”。它看起来像这样(未修改的web.config
):<httpRuntime maxRequestLength="4096" />
- 通过添加executionTimeout属性来修改httpRunTime:
<httpRuntime maxRequestLength="4096" executionTimeout="3600" />
- 将 web.config 保存到其他位置,并将修改后的内容复制到目录中。
- 从提升的命令提示符下,运行 IISReset 以重新启动 IIS。
- 监控 WSUS 元数据缓存
IISReset 后必须非常耐心,并强制一些客户端联系 WSUS,以便重建缓存。缓存大小稳定后,它将正常工作
答案4
我创建了一个全新的 Windows 2016 域,添加了几个成员服务器,并将其中一个服务器设置为 WSUS 角色,只是为了试用一下。配置 GPO 并让其中一个服务器检查更新后,WSUS 持续崩溃,错误代码为 0x80244022,我猜这意味着工作进程崩溃了,服务不可用。无论我尝试多少次,结果都一样。我只需要将应用程序池回收设置中的私有内存限制从 1800 MB 更改为 4,096 MB,重新启动应用程序池,问题就解决了!然后我看到单个 Windows 2016 服务器在其初始扫描中最多可以使用该应用程序池的 2.5 GB。所以基本上,Windows 2016 WSUS 应用程序池默认值已经过时,需要更新。