這幾天在做實驗,一台伺服器安裝了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檔案,會看到類似如下內容
複製代碼 代碼如下:
=================================
Checking System Update Readiness.
Binary Version 6.1.7600.20667
Package Version 8.0
2010-08-18 13:05
Checking Windows Servicing Packages
Checking Package Manifests and Catalogs
(f) CBS MUM Corrupt 0x00000000 servicing\Packages\Package_for_KB2286198_RTM~31bf3856ad364e35~amd64~~6.1.1.1.mum Expected file name Package_for_KB2286198~31bf3856ad364e35~amd64~~6.1.1.1.mum does not match the actual file name
Checking Package Watchlist
Checking Component Watchlist
Checking Packages
Checking Component Store
Summary:
Seconds executed: 140
Found 1 errors
CBS MUM Corrupt Total count: 1
Unavailable repair files:
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.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)
雲棲社區小編註:個人感覺上面的操作不太容易,經過測試比較麻煩,還是重新做下系統,然後安裝好iis,再安裝補丁。