社内におけるWindows Updateの管理では、特定のKB番号(例:KB5021234)が各PCに正しくインストールされているかどうかを確認する必要が頻繁に発生します。セキュリティパッチの緊急適用後や、特定の不具合を修正した更新プログラムを展開した際に、導入が完了しているかをひと目で把握したいケースは多いものです。しかし、社内PCの台数が多くなると、1台ずつ設定画面を開いて確認するのは非効率です。本記事では、PowerShellやイベントビューアー、管理ツールを使い、KB番号を指定して更新状況を効率的に確認する方法を解説します。
【要点】この記事で確認すること
- 最初に見る場所: 対象PC上でPowerShellのGet-Hotfixコマンド、またはイベントビューアーのWindows Updateログを確認します。
- 切り分けの軸: 端末側の更新履歴(インストール済み/未インストール)、管理側の配布設定(WSUS/Intuneポリシー)、ネットワーク接続(Windows Updateサーバーへの到達性)の3つの観点で原因を特定します。
- 注意点: 更新プログラムのロールバックや強制停止は管理者の指示がない限り行わないでください。トラブルシューティングの結果は、日時・PC名・KB番号を記録して管理者に報告しましょう。
ADVERTISEMENT
目次
KB番号を確認する前に:更新プログラムの基本構造
KB番号(Knowledge Base番号)は、Microsoftが公開する個々の更新プログラムを一意に識別する番号です。例えば「KB5021234」のように表記され、セキュリティ更新、品質更新、機能更新など種類ごとに割り当てられます。Windows Updateでは、この番号を基にインストール状況を管理します。社内PCの更新状況を確認する際は、「どのKB番号が」「いつ」「どのような結果(成功/失敗/保留中)」で適用されたかを把握する必要があります。
Windows Updateの設定画面([設定] → [Windows Update] → [更新履歴])で一覧を見ることはできますが、特定のKB番号をフィルターして探すには手間がかかります。また、複数台のPCを横断的に調べるには、リモートでコマンドを実行できるPowerShellや、一元管理ツール(WSUS、Intune、SCCMなど)を利用するのが現実的です。以下では、実際の手順を詳しく説明します。
PowerShellでKB番号のインストール状態を確認する
PowerShellは、社内PCに標準搭載されており、管理者権限があればすぐに使えます。以下の手順で、特定のKB番号がインストールされているかどうかを確認できます。
Get-Hotfixコマンドの基本的な使い方
- Windowsキーを右クリックし、「Windows PowerShell (管理者)」または「ターミナル (管理者)」を選択します。
- 以下のコマンドを実行し、すべてのインストール済み更新プログラムを一覧表示します。
Get-Hotfix - 特定のKB番号だけを検索するには、
-HotFixIDパラメーターを使います。Get-Hotfix -HotFixID KB5021234 - コマンドの結果が返ってきた場合は、その KB 番号がインストールされています。何も返ってこないか、「Get-Hotfix : 指定された修正プログラムはこのコンピューターにはインストールされていません。」というエラーが表示された場合は未インストールです。
- インストール日時や適用元(Windows Update / WSUS / オフラインインストーラー)も確認したい場合は、結果に含まれる
InstalledOnやInstalledByプロパティを出力します。Get-Hotfix -HotFixID KB5021234 | Format-List
なお、Get-HotfixはWinRMを介してリモートPCに対しても実行可能です。例えば、Invoke-Command -ComputerName PC01 -ScriptBlock { Get-Hotfix -HotFixID KB5021234 }とすることで、ネットワーク上の別のPCの状態を確認できます。このとき、対象PCのファイアウォール設定や実行ポリシーに注意してください。
Get-WindowsUpdateLogを使った詳細な履歴参照
より詳細な更新履歴(エラーコード、保留中の更新、ダウンロード状況など)を確認したい場合は、Get-WindowsUpdateLogコマンドが役立ちます。このコマンドは、C:\Windows\Logs\WindowsUpdate\ にある複数のログファイルを統合し、見やすい形で出力します。
- 管理者PowerShellで次のコマンドを実行します。
Get-WindowsUpdateLog - 出力されたテキストをメモ帳などに貼り付け、Ctrl+FでKB番号を検索します。
- 該当KBに関連するエントリが見つかれば、その時点での状態(ダウンロード成功、インストール開始、成功/失敗など)を確認できます。
この方法は、インストールに失敗したケースの原因追跡に有効です。ただし、ログの出力に時間がかかる場合があるため、必要に応じて実行してください。
イベントビューアーで更新履歴を追跡する
Windowsは更新プログラムの適用に関するイベントを「Windows ログ」→「システム」や「Application and Services Logs」→「Microsoft」→「Windows」→「WindowsUpdateClient」に記録します。イベントIDを絞り込むことで、特定のKB番号の動作を追跡できます。
イベントビューアーを使った確認手順
- [スタート] メニューを右クリックし、「イベントビューアー」を開きます。
- 左ペインで「アプリケーションとサービス ログ」→「Microsoft」→「Windows」→「WindowsUpdateClient」→「Operational」を選択します。
- 右ペインの「現在のログをフィルター…」をクリックし、イベントID「41」(インストール成功)、「43」(インストール失敗)、「44」(ダウンロード成功)などを指定します。
- フィルター結果から目的のKB番号を探すか、さらに詳細を確認したい場合は該当イベントをダブルクリックし、[詳細]タブの「System」や「Event Data」にKB番号が含まれていないかを確認します。
ただし、イベントビューアーは1台ごとの確認になり、大量のPCを効率的に調べるには適しません。そのため、管理ツールが使えない場合の補助的な手段として覚えておくとよいでしょう。
WSUSやIntuneを使った管理画面での確認
企業規模が大きくなると、Windows Server Update Services(WSUS)やMicrosoft Intune(クラウドベースのデバイス管理)を使って更新プログラムを一元管理しているケースが大半です。これらの管理画面では、特定のKB番号がどの端末にインストールされたかをレポートとして出力できます。
| 管理ツール | 確認方法 | 必要な権限 |
|---|---|---|
| WSUS | WSUS管理コンソール → [更新プログラム] → KB番号で検索 → [状態]タブで各端末のインストール状況を表示 | WSUSの管理者権限 |
| Microsoft Intune | Intune管理センター → [デバイス] → [Windows] → [更新プログラム] → [更新プログラムの状態] または [レポート] → [Windows更新プログラムのレポート] | Intune管理者(グローバル管理者または更新管理ロール) |
| SCCM (Configuration Manager) | SCCMコンソール → [ソフトウェア ライブラリ] → [更新プログラム] → KB番号で検索 → [展開] で各端末のコンプライアンス状況を確認 | SCCM管理者権限 |
これらのツールを使うと、複数端末の状況を一度に比較でき、更新が滞っている端末を特定しやすくなります。ただし、レポートの反映には遅延が発生することがあるため、リアルタイム性が必要な場合はPowerShellで直接確認するほうが確実です。
更新が適用されない場合の切り分け手順
KB番号がインストールされていない場合、その原因を切り分ける必要があります。以下のフローで確認してください。
端末側の確認事項
- 更新プログラムのダウンロード状態: 設定 → Windows Update → 「更新プログラムのチェック」を実行し、該当KBが「ダウンロード中」「保留中」などと表示されるかを確認します。
- エラーコードの有無: 更新履歴にエラーコードが記録されている場合、そのコード(例:0x80070002)をメモします。
- ディスク容量: 更新プログラムのインストールには十分な空き容量が必要です。Cドライブの空き容量を確認します(最低2GB程度)。
- 再起動保留: 更新プログラムの適用後に再起動が保留されていると、次の更新がインストールされないことがあります。再起動してから再度確認します。
管理側の確認事項
- 配信設定: WSUSやIntuneのポリシーで、該当KBが「承認済み」かつ「必須」として展開されているか確認します。
- 配信リング: Windows Update for Businessの配信リング(リング1〜リング4)によって更新プログラムの提供タイミングが異なります。対象端末が該当KBが利用可能なリングに属しているかを確認します。
- グループポリシー: 「Windows Update を管理するためのポリシー」で、更新プログラムの自動ダウンロードが無効になっていないか確認します。
ネットワークの確認
- WSUSサーバーへの到達性: 端末からWSUSサーバー(例:http://wsus.contoso.com)にアクセスできるか、PowerShellで
Test-NetConnectionなどを用いて確認します。 - プロキシ設定: プロキシ経由でWindows Updateに接続する場合、認証が必要なプロキシでは更新プログラムがダウンロードできないことがあります。
よくあるトラブルと対処のポイント
ここでは、KB番号の確認時に遭遇しやすいトラブルと、その対処方針を紹介します。
PowerShellで「アクセスが拒否されました」
管理者権限でPowerShellを起動していない場合に発生します。必ず「管理者として実行」で起動してください。また、リモートPCを確認する場合は、CredSSP認証やRunAs権限が必要な場合があります。
Get-HotfixでKB番号がヒットしないが、更新履歴には存在する
Get-Hotfixは、Win32_QuickFixEngineeringクラスに登録された更新プログラムのみを表示します。一部の更新プログラム(特にドライバー更新やMicrosoft Store経由の更新)はこのクラスに含まれないため、表示されないことがあります。その場合は、Get-WindowsUpdateLogやイベントビューアーで確認してください。
WSUSのレポートで「不明」と表示される
端末がWSUSサーバーに情報を報告していない場合、「不明」ステータスになります。最新の状態を取得するには、端末側で wuauclt /reportnow を管理者コマンドプロンプトで実行してから、再度レポートを更新します。
管理者への報告時に必要な情報
トラブルシューティングの結果を管理者に伝える際は、以下の項目を漏れなく記録しましょう。
- 対象PCのホスト名とIPアドレス
- 確認したKB番号
- 確認に使用したコマンドとその出力結果(エラーコード含む)
- 確認日時
- 端末で実行した再起動や更新チェックの有無
これらの情報をまとめて報告することで、管理者は迅速に判断・対応できます。
まとめ
社内PCの特定KB番号の更新状況を確認する方法として、PowerShellのGet-Hotfix、Get-WindowsUpdateLog、イベントビューアー、そしてWSUS/Intuneの管理画面を紹介しました。確認の際は、端末側の更新履歴、管理側の配布設定、ネットワーク接続の3軸で原因を切り分けることが重要です。管理者権限が必要な操作もあるため、自身の権限範囲を把握したうえで実行してください。また、ログやエラーコードは必ず記録し、勝手なロールバックは行わずに管理者へエスカレーションしましょう。この記事を参考に、効率的な更新状況確認を実践していただければ幸いです。
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Office・仕事術の人気記事ランキング
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【Excel】文字が入っているセルの「個数」を数える!COUNTA関数の簡単な使い方
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Outlook】予定表の「祝日」が表示されない!最新カレンダーの追加と二重表示の修正手順
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【Copilot】「サービスに接続できません」エラーの原因切り分けと対処法
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
