Windows Management Instrumentation(WMI)をマスターしてネットワーク管理を効率化する方法
Windows Management Instrumentation(WMI)は、Microsoftが提供する仕様のセットで、Windowsコンピューティングシステムからネットワーク上のデバイスやアプリケーションの管理を一元的に行うことを目的としています。WMIを利用することで、ローカルまたはリモートのコンピューターシステムの状態に関する情報を取得できます。
WMIの目的は、リモートシステムを含むさまざまなWindows運用環境の管理を管理者が支援できるようにすることです。WMIの大きな利点のひとつは、エンタープライズネットワークコンポーネントの保守コストと管理コストを削減できる点にあります。
WMIは、Microsoftの最新オペレーティングシステムにプリインストールされています。Windows 10より前のOSでは、ベンダーは「WMIC(WMI Command Line)」と呼ばれるWMI用のコマンドラインインターフェース(CLI)を提供していました。WMICは、これらの旧バージョンのWindowsにおける既存のシェルやユーティリティコマンドと互換性があります。
WBEMの実装としてのWMI
WMIは、サポート対象のWindowsプラットフォーム向けに、Web-Based Enterprise Management(WBEM)イニシアチブをMicrosoftが実装したものです。WBEMとは、エンタープライズIT環境において、多様なハードウェアおよびソフトウェア管理システムから情報へアクセスし、それらを統合するための管理インフラ標準を策定する業界全体の取り組みです。
WBEMは、Common Information Model(CIM)スキーマを基盤として構築されています。CIMは、デバイスやアプリケーションの特性を定義するためのコンピューター業界標準であり、システム管理者や管理プログラムが複数のメーカーやソースにまたがるデバイス・アプリケーションを制御できるようにします。この規格は、DMTF(旧Distributed Management Task Force)によって推進されています。
WMIの詳細
WMIは、エンタープライズネットワークにおけるWindowsの動作・構成・状態について、一貫性のあるモデルをユーザーに提供します。COM APIを備えており、ローカルまたはリモートのコンピューターシステムの状態に関する管理情報へアクセスできます。リモートのWMI接続は、分散コンポーネントオブジェクトモデル(DCOM)を通じて確立されます。
WMIツールキットには、Windows Driver Modelのさまざまな拡張機能が含まれています。このモデルにより、重要な情報や各種通知に対するOSインターフェースが提供されます。
開発者やIT管理者は、WMIスクリプトやアプリケーションを作成して、リモートコンピューター上の管理タスクを自動化できます。こうしたスクリプトやアプリケーションを作成するために、特定のソフトウェア開発キット(SDK)をダウンロードしたりインストールしたりする必要はありません。管理アプリケーションやスクリプトは、多様なプログラミング言語を使ってWMI経由で操作の実行やデータの取得を行えます。
スクリプトへの対応に加えて、WMIはMicrosoft System Center Operations Manager(SCOM)やWindows Remote Management(WinRM)など、OSの他の部分や製品にも管理データを供給します。
WMIが対応している主な操作は以下の通りです。
- セキュリティ設定の構成
- システムプロパティの設定および変更
- 許可されたユーザーやユーザーグループに対する権限の設定・変更
- ドライブラベルの割り当てと変更
- プロセスを指定した時刻に実行するようスケジューリング
- オブジェクトリポジトリのバックアップ
- エラーログの有効化・無効化
Windows Management Instrumentationのアーキテクチャ
WMIは統一されたインターフェースを提供するため、WMIクライアントアプリケーションやスクリプトは複数のシステムAPIを個別に呼び出す必要がありません。また、柔軟で拡張性のあるアーキテクチャにより、新しいデバイスやアプリケーション、その他の機能強化にも対応できます。
WMIアーキテクチャの中核となる3つの要素は次の通りです。
- 管理インフラストラクチャ
- CIM Object Manager(CIMOM):アプリケーションに管理データへの統一的なアクセス手段を提供します。
- CIMOMオブジェクトリポジトリ:管理データを格納する中央ストレージ領域です。
- WMIプロバイダー
- CIMOMと管理対象オブジェクトをつなぐ仲介役です。
- 主な機能:
- WMI APIを介してCIMOMに管理対象オブジェクトのデータを供給する
- 管理アプリケーションに代わってリクエストを処理する
- イベント通知を生成する
- WMIコンシューマー
- WMIインフラストラクチャと連携する管理アプリケーションやスクリプトです。
- データの照会・列挙
- プロバイダーメソッドの実行
- イベントへのサブスクリプション

PowerShellでCIMとの統合に使える主なコマンドレットの例。
Windows Management Instrumentationの構成要素
WMIの主要な構成要素は以下の通りです。
- 管理対象オブジェクト: ハードディスクドライブ、ネットワークアダプター、OSなど、WMIを通じて管理される物理的なエンティティ・コンポーネントやサービスを指します。
- WMIプロバイダー: WMIのために1つ以上の管理対象オブジェクトを監視する、コンポーネントオブジェクトモデル(COM)オブジェクトです。
- WMIインフラストラクチャ: WMI CoreとWMIリポジトリで構成される、Windows OSのコンポーネントです。
- WMIリポジトリ: CIMOMによって管理され、WMI名前空間ごとに整理された中央ストレージ領域です。WMIプロバイダーが定義するクラスなど、オブジェクトに関する静的データを格納します。
- WMIサービス: 管理アプリケーション(プロバイダー)とWMIリポジトリの間の仲介役として機能します。
- WMIコンシューマー: WMI向けCOM APIまたはスクリプティングAPIを呼び出してクエリを送信する、管理アプリケーションやスクリプトです。
管理者はどのようにWMIを活用するのか
管理者は、すべてのWindowsベースのアプリケーションでWMIを利用できます。特に効果的なのは、エンタープライズアプリケーションや管理スクリプトでの活用です。WMIの代表的な用途には次のようなものがあります。
- リモートコンピューターの管理
- アプリケーション間での管理情報の共有
- あらゆるソースからの管理データへの統一的なアクセス
- Windowsベースのシステムとネットワークの監視
- UEBA(ユーザーエンティティビヘイビアアナリティクス)システムの一環としての、エンタープライズネットワーク全体のアクティビティ監視
- 異常なイベントや不審な挙動の検知、内部脅威のチェック
WMIクエリの実行方法
WMIクエリを実行する最も簡単な方法は、標準のWindowsコマンドプロンプトでWMICを実行することです。手順は以下の通りです。
- コマンドプロンプトを開きます。
- 「WMIC」と入力してEnterキーを押し、プログラムを起動します。
- WMICのコマンドプロンプトが開いたら、さまざまなWMIクエリを実行し、必要な情報を出力として取得します。
- 結果はコマンドプロンプト上に表示されます。

PowerShellはWMIとインターフェース接続でき、管理者はPowerShellスクリプト言語をWMIデータと組み合わせて利用できます。
WMIサービスの開始と停止
winmgmt.exeサービスにより、WMIはローカルコンピューター上で実行されます。WMIはシステム起動時に自動的に開始されるか、最初の管理・監視アプリケーションまたはスクリプトがWMI名前空間への接続を要求した際に自動的に起動します。
WMIサービスを開始する手順:
- コマンドプロンプトを開きます。
- 「net start winmgmt[/<switch>]」と入力します。
- WMIサービスによっては、自動的に起動しないサービスもある点に注意してください。
WMIサービスを停止する手順:
- コマンドプロンプトを開きます。
- 「net stop winmgmt」と入力します。
注意:WMIサービスを停止すると、それに依存するすべてのサービスも停止します。
Windows Management Infrastructure(MI)
現行世代のWMIは、Windows Management Infrastructure(MI)として知られています。MI APIには、ネイティブのWMIプロバイダーやクライアントを作成するために開発者が必要とするインターフェース、列挙型、構造体、共用体が含まれています。Microsoftによると、WMIは以前のバージョンのWMIと完全に互換性があり、MIフレームワークを使用して記述された新バージョンにも、従来のWMIスクリプトやアプリケーションからアクセス可能です。
-
MacのFinderを最大限に活用する7つのヒント|4つの表示オプション徹底解説
MacのFinderを初期設定のまま使っているなら、その便利な機能の多くを見逃しているかもしれません。実はFinderには、状況に応じて使い分けられる便利な表示モードが他にも用意されています。この記事では、デフォルトの表示も含めて各モードを詳しく解説し、それぞれのメリットや役立つTips、ショートカットをご紹介します。 1. アイコン表示(Icon View) Finderを開くと、最初に表示されるのがグリッド状にアイコンが並ぶ「アイコン」表示です。このデフォルト表示では、アイコンをドラッグ&ドロップして自由なレイアウトに配置できます。 アイコン表示がごちゃごちゃしてきたら、この表示専用のコ
-
FaceTimeで「サーバーで登録処理中にエラーが発生しました」と表示されたときの対処法
FaceTimeは世界でも最も信頼性が高く、直感的に使えるビデオ通話アプリの一つですが、Appleが自社製品限定としているのが惜しまれるところです。もちろん完璧なソフトウェアは存在せず、ときどき「サーバーで登録処理中にエラーが発生しました」というエラーに遭遇することがあります。しかも大抵、一番困るタイミングで発生しがちです。 このエラーは何を意味する? やや不可解なメッセージに見えますが、意味自体はシンプルです。FaceTimeがApple IDを使ってサービスへのサインインを試みているものの、その過程で何らかの問題が起きているという状態です。他のサービスでは問題なく使えるApple