Windows-Server-2008-R2

WMIC - “作業系統 - 找不到別名”

  • August 8, 2016

我有一個產品,它使用 WMI 來獲取它正在執行的伺服器的狀態。該應用程序設置為使用以下內容來獲取可用的可用記憶體量。

wmic os get freePhysicalMemory

在集群中的一台特定伺服器上,我們收到以下錯誤消息。

os - Alias not found

有人對如何修復這個失去的別名有任何提示嗎?我已經在同一集群(和我的電腦)中的其他伺服器上測試了該命令,並且執行良好。還有其他方法可以獲取此資訊,但應用程序沒有提供使用它們的簡單方法。伺服器正在執行 Windows Server 2008 R2 SP1。謝謝!

您的 WMI 數據庫似乎已損壞,您需要遵循以下指南:

https://msdn.microsoft.com/en-us/library/aa394603(v=vs.85).aspx

執行WMI 診斷實用程序,這將幫助您確認這是否真的是您的問題,然後按照本指南進行修復:

第一次嘗試:

  1. winmgmt /verifyrepository

如果結果顯示不一致,請轉到步驟 2 2. winmgmt /salvagerepository 3. winmgmt /verifyrepository- 再次檢查 wmi 儲存庫是否已成功修復

如果失敗 - 請按照以下步驟嘗試完全重建 WMI 儲存庫:

  1. 禁用和停止 winmgmt 服務
  2. 刪除或重命名 C:\Windows\System32\wbem\repository
  3. 啟用並啟動 winmgmt 服務
  4. 以管理員身份打開 CMD 提示符
  5. 在 CMD 提示中導航到 C:\Windows\System32\wbem\
  6. 執行以下命令:

for /f %s in ('dir /b *.mof') do mofcomp %s

注意:這需要一分鐘左右才能完成。

  1. 現在執行命令:

for /f %s in ('dir /b en-us\*.mfl') do mofcomp en-us\%s 8. 重啟伺服器

引用自:https://serverfault.com/questions/795583