about_WMI
Краткое описание
Инструментарий управления Windows (WMI) использует общую информационную модель (CIM) для представления систем, приложений, сетей, устройств и других управляемых компонентов современного предприятия.
Подробное описание
Инструментарий управления Windows (WMI) — это реализация веб-управления корпоративным управлением (WBEM), отраслевым стандартом.
Классический WMI использует DCOM для взаимодействия с сетевыми устройствами для управления удаленными системами. Windows PowerShell 3.0 представляет модель поставщика CIM, которая использует WinRM для удаления зависимости от DCOM. Эта модель поставщика CIM также использует новые API поставщика WMI, позволяющие разработчикам создавать командлеты Windows PowerShell в машинном коде (C++).
Не путайте поставщиков WMI с поставщиками Windows PowerShell. Многие функции Windows имеют связанный поставщик WMI, который предоставляет свои возможности управления. Чтобы получить поставщиков WMI, выполните запрос WMI, который получает экземпляры класса WMI __Provider , например следующий запрос.
Get-WmiObject -Class __Provider
ТРИ КОМПОНЕНТА WMI
Следующие три компонента WMI взаимодействуют с Windows PowerShell: пространства имен, поставщики и классы.
Пространства имен WMI упорядочивают поставщиков WMI и классы WMI в группы связанных компонентов. Таким образом, они похожи на пространства имен платформа .NET Framework.
Пространства имен не являются физическими расположениями, но более похожи на логические базы данных. Все пространства имен WMI — это экземпляры системного класса __Namespace. Пространство имен WMI по умолчанию — root/cimv2
(начиная с Microsoft Windows 2000). Чтобы использовать Windows PowerShell для получения пространств имен WMI в текущем сеансе, используйте команду со следующим форматом.
Get-WmiObject -Class __Namespace
Чтобы получить пространства имен WMI в других пространствах имен, используйте параметр пространства имен для изменения расположения поиска. Следующая команда находит пространства имен WMI, которые находятся в root/cimv2/Applications
пространстве имен.
Get-WmiObject -Class __Namespace -Namespace root/cimv2/applications
Пространства имен WMI являются иерархическими. Таким образом, получение списка всех пространств имен в определенной системе требует выполнения рекурсивного запроса, начиная с корневого пространства имен.
Поставщики WMI предоставляют сведения о управляемых объектах Windows. Поставщик получает данные из компонента и передает эти данные через WMI в приложение управления, например Windows PowerShell. Большинство поставщиков WMI являются динамическими поставщиками, что означает, что они динамически получают данные при запросе через приложение управления.
ПОИСК КЛАССОВ WMI
В установке Windows 8 по умолчанию существует более 1100 классов root/cimv2
WMI. Благодаря этому многим классам WMI задача становится идентификацией соответствующего класса WMI для выполнения конкретной задачи. Windows PowerShell 3.0 предоставляет два способа поиска классов WMI, связанных с определенным разделом.
Например, чтобы найти классы WMI в root/cimv2
пространстве имен WMI, связанном с дисками, можно использовать запрос, например приведенный здесь.
Get-WmiObject -List *disk*
Чтобы найти классы WMI, связанные с памятью, можно использовать запрос, например приведенный здесь.
Get-WmiObject -List *memory*
Командлеты CIM также предоставляют возможность обнаружения классов WMI. Для этого используйте Get-CimClass
командлет. Команда, показанная здесь, содержит классы WMI, связанные с видео.
Get-CimClass *video*
Расширение вкладок работает при изменении пространств имен WMI, поэтому использование расширения вкладок позволяет легко обнаруживать вложенные пространства имен WMI. В следующем примере Get-CimClass
командлет перечисляет классы WMI, связанные с параметрами питания.
Чтобы найти его, введите root/cimv2
пространство имен и нажмите клавишу TAB несколько раз, пока не появится пространство имен питания. Вот нужная команда:
Get-CimClass *power* -Namespace root/cimv2/power
PowerShell