Восстановление WMI при ошибках Failed to initialize all required WMI classes — Invalid class or Invalid namespace

Продолжая тему борьбы с неполадками в работе Windows Management Instrumentation (WMI) рассмотрим ситуацию когда проблемный сервер «ни под каким соусом» не хочет возвращать значения из пространства имён WMI, что чревато всякими неприятностями, например при просмотре свойств системы не отображается информация о процессоре и оперативной памяти…

image

При попытке открыть свойства WMI Control в оснастке Computer Management можно обнаружить ошибку инициализации основных системных WMI классов.

Failed to initialize all required WMI classes.
Win32_Processor. WMI: Invalid namespace   
Win32_WMISetting. WMI: Invalid namespace 
Win32_OperationSystem. WMI: Invalid namespace

image

 

Методы исправления ситуации

Метод #1

Пробуем перезапустить службу WMI и если проблема не устраняется запускаем проверку согласованности базы данных WMI с запуском её перестроения при обнаружении несогласованности.

net stop Winmgmt & net start Winmgmt
winmgmt /salvagerepository

 

Метод #2

Метод с перекомпиляцией mof/mfl файлов имеющихся в каталоге %windir%\system32\wbem. Помогал неоднократно. Запускаем на проблемном сервере командную строку с правами Администратора и выполняем последовательно команды:

cd /d C:\WINDOWS\system32\wbem
for /f %s in ('dir /b *.mof *.mfl') do mofcomp %s

 

Метод #3

Более жёсткий метод. Можно попробовать его если первый и второй методы не помогают. Останавливаем службу WMI, выполняем перерегистрацию всех библиотек dll в каталоге %windir%\system32\wbem, переименовываем каталог %windir%\system32\wbem\Repository и снова запускаем службу WMI, после чего WMI Repository будет сгенерирован заново.

net stop Winmgmt 
cd /d C:\WINDOWS\system32\wbem 
for /f %s in ('dir /b *.dll') do regsvr32 /s %s 
move C:\WINDOWS\system32\wbem\Repository Repository_BAD
net start Winmgmt

После этого, если проблемы с WMI устранены, можно удалить каталог Repository_BAD а также при необходимости выполнить перекомпиляцию файлов *.mof относящихся к отдельным приложениям таким как например SQL Server.

Дополнительные источники информации:

TechNet Forums — failed to initialize all required wmi classes on Primary server
TechNet Forums — WMI becomes corrupt on FIM Service/Sync server

Всего комментариев: 3 Комментировать

  1. Оля /

    Помог 1й метод. Спасибо большое.

  2. Santhosh /

    1st method resolved the problem

  3. Maxiz /

    помог второй метод, спасибо автору!

Добавить комментарий