这些计算机位于测试WSUS组中,用于Windows 10升级.如果我搜索升级,Windows 7计算机会在WindowsUpdate.log中显示下载开始后不久就会失败. Windows Update中的“更新历史记录”设置将更新的状态显示为“失败”但已安装.
WSUS日志说:
“Windows无法安装以下更新,错误0x80240020:Windows 7和8.1升级到Windows 10 Pro,版本1703,en-us.”
2017-05-09 11:41:58:028 804 358 Report REPORT EVENT: {07B79E9B-0A6D-4D08-AA68-38179A2C566C} 2017-05-09 11:41:50:707+0100 1 182 101 {081B357C-B9A3-497C-8E8C-206E1D723B29} 201 80240020 AutomaticUpdates Failure Content Install Installation Failure: Windows Failed to install the following update with error 0x80240020: Windows 7 and 8.1 upgrade to Windows 10 Pro,version 1703,en-us.
Windows 10计算机显示更新可用,但保持0%下载. LAN电缆上没有网络活动,TCPView不显示正在下载的任何内容.
到目前为止我尝试了什么:
>检查是否已安装用于解密ESD内容的KB3159706
>检查KB3095113的先决条件是否全部安装完毕
>检查KB30的KB3095113是否支持Windows 10功能升级.
>在IIS服务器上为.esd文件设置MIME类型(以上更新应该对其进行排序).
>从计算机中删除了Windows Update缓存,停止了BITS / Windows Update服务并重新启动.
>重新启动IIS网站
>重新启动WSUS服务器
>检查Windows防火墙状态(在服务器上禁用)
>要求Windows 10计算机从Windows更新而不是WSUS获取更新(这似乎下载并安装好),这使我认为这是我们的WSUS服务器的问题.
5月24日更新:我已经构建了另一个WSUS服务器,同样的问题也随之发生 – 客户端显示“正在下载0%”.从Windows Update直接检查时我已经升级了机器,所以我现在真的不确定这个问题.
如果在安装KB3159706之前将1703升级同步到WSUS,则在执行KB3159706及其安装后服务(link)的必要更新后,我们仍需要按照此处的说明操作:
基本上有4个步骤要执行:
1 – 删除在安装KB3159706之前同步的软件包.通过WSUS服务器的powershell:
Get-WsusClassification | Where-Object -FilterScript {$_.Classification.Title -Eq "Upgrades"} | Set-WsusClassification -Disable $s = Get-WsusServer $1703Updates = $s.SearchUpdates("version 1703") $1703Updates | foreach { $_.Decline() } $1703Updates | foreach { $s.DeleteUpdate($_.Id.UpdateId) } Get-WsusClassification | Where-Object -FilterScript {$_.Classification.Title -Eq "Upgrades"} | Set-WsusClassification
2 – 从WSUS数据库中删除有关升级1703的错误内容,从数据库运行.介意:从帖子中的sql脚本中删除尾部分号.它们可能导致“未声明表变量”的错误
declare @NotNeededFiles table (FileDigest binary(20) UNIQUE) insert into @NotNeededFiles(FileDigest) (select FileDigest from tbFile where FileName like '%15063%.esd' except select FileDigest from tbFileForRevision) delete from tbFileOnServer where FileDigest in (select FileDigest from @NotNeededFiles) delete from tbFile where FileDigest in (select FileDigest from @NotNeededFiles)`
3 – 在WSUS服务器上通过WSUS GUI或powershell命令重新启动同步.
$s = Get-WsusServer $sub = $s.GetSubscription() $sub.StartSynchronization()
4 – 在客户端计算机上修复出现错误的客户端计算机:
控制面板 – >疑难解答 – > Windows Update->尝试以管理员身份进行故障排除
在所有这些活动中,不需要重新启动.然后,重试并祝你好运!