我有两个 Microsoft Update(Windows Update 的升级版本)更新,它们在我的一台 Windows Server 2003 服务器上不断安装失败。错误代码为 0x80070005。我尝试安装它们很多次,甚至在服务器重启后也失败了。
我找到了一个提示,删除位于底部的文件夹 C:\Windows\SoftwareDistribution\Windows Update 中下载更新时出错。这对另一个有同样问题的更新有效,但我仍然有两个更新无法安装。
剩下的更新是 KB968816 和 KB961371。SoftwareDistribution 文件夹技巧奏效的更新是 KB967723。
我还可以尝试其他技巧吗?
答案1
答案2
我的 Windows Server 2003 R2 SP2 也遇到了这个问题,联系 Microsoft 后,他们通过电子邮件向我发送了以下说明。我按照建议 3 操作,重新启动后,我的 Windows 更新又可以正常工作了!
注意:我没有尝试建议 4,我尝试了建议 3,并且它对我有用。
警告:执行建议 3 将重置所有安全设置有以下副作用(不过很容易解决)
- 我的 ASP 网站停止工作(必须转到 ASP 文件夹并启用对网络服务的访问)。
- MS SQL Server 也无法启动。我不得不使用 SQL Server 安装程序修复我的 SQL Server 安装,才能使其再次运行。
您已收到警告,因此开始吧...
建议 1:以管理员身份登录(doh!)
建议 2:暂时禁用防病毒软件(哎呀!)
建议 3:自动将安全设置恢复为默认设置
==================================================
按照 Windows XP 步骤进行操作。
重新启动计算机并尝试再次执行 Windows 更新以查看问题是否已解决。
建议 4:重置权限
==================================================
此步骤将重置此系统的权限设置,这可能需要一些时间。非常感谢您的耐心。
步骤 1:下载 SubInACL (SubInACL.exe)
- 请从以下链接下载“subinacl.msi”并将安装补丁保存在桌面上:
请转到桌面并双击下载的文件进行安装。
安装时请选择“C:\Windows\System32”作为目标文件夹(注意:我们假设C:\是系统分区)。稍后我们将使用此工具重置机器上的当前权限设置。
第2步:
点击“开始”、“运行”,输入:“notepad C:\reset.cmd”(不带引号)并按“Enter”。出现提示时选择“是”。
复制以下命令,然后将其粘贴到打开的记事本窗口中:
@echo 关闭
secedit /configure /cfg %windir%\repair\secsetup.inf /db secsetup.sdb /verbose secedit.exe /analyze /db C:\WINDOWS\sectest.db /cfg C:\WINDOWS\inf\defltwk.inf /log C:\WINDOWS\security\logs\secanalyze.log secedit.exe /configure /db C:\WINDOWS\sectest.db /cfg C:\WINDOWS\inf\defltwk.inf /log C:\WINDOWS\security\logs\secrepair.log
密码/A/D c:\windows\system32\catroot*.* 密码/A/DC:\WINDOWS\system32\CatRoot{F750E6C3-38EE-11D1-85E5-00C04FC295EE}*.*
Subinacl /service wuauserv /sddl=D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU) Sc sdset wuauserv D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=administrators=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=administrators=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=administrators=f
subinacl /子目录 %SystemDrive% /grant=administrators=f
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=system=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=system=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=system=f
subinacl /子目录 %SystemDrive% /grant=system=f
@Echo =========================
@Echo 完成。
@Echo =========================
@暂停
粘贴上述命令后,请关闭“记事本”窗口。当提示是否保存文件时,选择“是”。
单击“开始”、“运行”,输入:“C:\reset.cmd”(不带引号)并按“Enter”运行粘贴的命令。
您将看到一个类似 DOS 的窗口正在处理请求。
(注意:此步骤可能需要几分钟,请耐心等待。完成后,系统将提示“完成,按任意键继续”。)
完成以上步骤后,重新启动并参考Windows更新网站再次安装更新。
答案3
我刚刚遇到这个问题(Windows 更新无法在 Server 2003 R2 上安装甚至下载),但 KB 号不同。
解决方案是通过 services.msc 停止索引服务,然后重试更新。
这个问题(至少我看到的时候)是由于索引服务锁定了 update.url 文件。我找到了解决方案https://social.technet.microsoft.com/Forums/windowsserver/en-US/0283f990-9935-4f3b-906e-31a37385953c/windows-update-0x80070005-errors。