Windows 2008 R2服务管理器刷新失败的解决方法
这几天在做实验,一台服务器安装了Windows2008R2X64系统,当我想安装服务器角色的时候,发现无法安装,出现了“服务器刷新失败”,点击它弹出对话框提示“刷新服务器管理器时出现意外错误:异常来自HRESULT:0x800F0818。有关详细信息,请参阅事件日志:诊断、事件查看器、应用程序和服务日志、Microsoft、Windows、服务器管理器、操作”然后我就查看日志,日志内容如下:
无法发现系统的状态。找到一个意外的异常:
System.Runtime.InteropServices.COMException(0x800706BE):远程过程调用失败。(异常来自HRESULT:0x800706BE)
在System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32errorCode,IntPtrerrorInfo)
在Microsoft.Windows.ServerManager.ComponentInstaller.CreateSessionAndPackage(IntPtr&session,IntPtr&package)
在Microsoft.Windows.ServerManager.ComponentInstaller.InitializeUpdateInfo()
在Microsoft.Windows.ServerManager.ComponentInstaller.Initialize()
在Microsoft.Windows.ServerManager.Common.Provider.RefreshDiscovery()
在Microsoft.Windows.ServerManager.LocalResult.PerformDiscovery()
在Microsoft.Windows.ServerManager.ServerManagerModel.CreateLocalResult(RefreshTyperefreshType)
在Microsoft.Windows.ServerManager.ServerManagerModel.InternalRefreshModelResult(Objectstate)
开始纠结了,手上有很多Win2008R2的服务器,还是第一次遇到这个问题,开始求助于强大的Google,终于让我在一个国外的博客上找到了解决办法。
解决办法:
1、 首先下载并安装“系统更新准备工具”地址:http://support.microsoft.com/kb/947821
2、 获取c:\Windows\Servicing\Packages目录的所有权
takeown/Fc:\Windows\Servicing\Packages/Dy/R
3、 赋予登陆用户对c:\Windows\Servicing\Packages目录完全控制权限
caclsc:\Windows\Servicing\Packages/E/T/C/G"UserName":F //username为当前登陆用户名
4、打开C:\Windows\Logs\CBS目录下的CheckSUR.log文件,会看到类似如下内容
================================= CheckingSystemUpdateReadiness. BinaryVersion6.1.7600.20667 PackageVersion8.0 2010-08-1813:05 CheckingWindowsServicingPackages CheckingPackageManifestsandCatalogs (f) CBSMUMCorrupt0x00000000 servicing\Packages\Package_for_KB2286198_RTM~31bf3856ad364e35~amd64~~6.1.1.1.mum ExpectedfilenamePackage_for_KB2286198~31bf3856ad364e35~amd64~~6.1.1.1.mumdoesnotmatchtheactualfilename CheckingPackageWatchlist CheckingComponentWatchlist CheckingPackages CheckingComponentStore Summary: Secondsexecuted:140 Found1errors CBSMUMCorruptTotalcount:1 Unavailablerepairfiles: servicing\packages\Package_for_KB2286198_RTM~31bf3856ad364e35~amd64~~6.1.1.1.mum servicing\packages\Package_for_KB2286198_RTM~31bf3856ad364e35~amd64~~6.1.1.1.cat
5、下载CheckSUR.log出现的KB2286198文件到c盘,然后运行如下命令
C:\Windows\system32>Cd\
C:\>Expand–F:*Windows6.1-KB2286198-x64.msuc:\temp
C:\>Cdtemp
C:\Temp>Expand–F:*Windows6.1-KB2286198-x64.cabc:\temp\cab
6、打开c:\temp\cab目录找到CheckSUR.log中出现的两个文件
Package_for_KB2286198_RTM~31bf3856ad364e35~amd64~~6.1.1.1.mum
Package_for_KB2286198_RTM~31bf3856ad364e35~amd64~~6.1.1.1.cat
7、将这两个文件复制到c:\Windows\Servicing\Packages目录,覆盖已有的文件
到此问题解决
参考文章:
HowtofixServerManagerErrorsafterinstallingupdates(HRESULT:0x800F0818/HRESULT:0x800B0100)
毛票票小编注:个人感觉上面的操作不太容易,经过测试比较麻烦,还是重新做下系统,然后安装好iis,再安装补丁。