這幾天在做實驗,一臺服務器安裝了Windows 2008 R2 X64系統,當我想安裝服務器角色的時候,發現無法安裝,出現了“服務器刷新失敗”,點擊它彈出對話框提示“刷新服務器管理器時出現意外錯誤: 異常來自 HRESULT:0x800F0818。有關詳細信息,請參閱事件日志: 診斷、事件查看器、應用程序和服務日志、Microsoft、Windows、服務器管理器、操作” 然后我就查看日志,日志內容如下:
無法發現系統的狀態。找到一個意外的異常:
System.Runtime.InteropServices.COMException (0x800706BE): 遠程過程調用失敗。 (異常來自 HRESULT:0x800706BE)
在 System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
在 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(RefreshType refreshType)
在 Microsoft.Windows.ServerManager.ServerManagerModel.InternalRefreshModelResult(Object state)
開始糾結了,手上有很多Win2008R2的服務器,還是第一次遇到這個問題,開始求助于強大的Google,終于讓我在一個國外的博客上找到了解決辦法。
解決辦法:
1、 首先下載并安裝“系統更新準備工具”地址:http://support.microsoft.com/kb/947821
2、 獲取c:/Windows/Servicing/Packages目錄的所有權
takeown /F c:/Windows/Servicing/Packages /D y /R
3、 賦予登陸用戶對c:/Windows/Servicing/Packages目錄完全控制權限
cacls c:/Windows/Servicing/Packages /E /T /C /G "UserName":F //username為當前登陸用戶名
4、打開C:/Windows/Logs/CBS目錄下的CheckSUR.log文件,會看到類似如下內容
5、下載CheckSUR.log出現的KB2286198文件到c盤,然后運行如下命令
C:/Windows/system32>Cd/
C:/>Expand –F:* Windows6.1-KB2286198-x64.msu c:/temp
C:/>Cd temp
C:/Temp>Expand –F:* Windows6.1-KB2286198-x64.cab c:/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目錄,覆蓋已有的文件
到此問題解決
參考文章:
How to fix Server Manager Errors after installing updates (HRESULT:0x800F0818 / HRESULT:0x800B0100)
VEVB武林網小編注:個人感覺上面的操作不太容易,經過測試比較麻煩,還是重新做下系統,然后安裝好iis,再安裝補丁。
新聞熱點
疑難解答
圖片精選