WSUS クライアント エージェントに関する問題のトラブルシューティング
この記事は、Windows Server Update Services (WSUS) クライアント エージェントに関する問題を診断して解決するのに役立ちます。
元の製品バージョン: Windows Server Update Services
元の KB 番号: 10132
WSUS クライアント エージェントで問題が発生すると、さまざまな方法で問題が発生する可能性があります。 一般的な問題をいくつか次に示します。
- グループ ポリシーのクライアント設定に問題がある可能性があります。
- BITS に問題がある可能性があります。
- WSUS エージェント サービスに問題がある可能性があります。
- これは、クライアントがサーバーに到達できないネットワークの問題に関連している可能性があります。
- 自動更新エージェント ストアに問題がある可能性があります。
- これは、ディスクの複製によってクライアントに WSUS クライアント ID が重複する問題である可能性があります。
クライアントが正しく構成されていることを確認する
WSUS クライアント エージェントに関する問題のトラブルシューティングを行う場合は、まずクライアントが適切に構成されていることを確認します。 クライアントが適切な Active Directory グループ ポリシーを受信しており、WSUS サーバーの詳細が存在することを確認します。 これを行うには、次のコマンドを実行します。
GPRESULT /V > GPRESULT.TXT
メモ帳でテキスト ファイルを開き、WSUS ポリシーの名前を見つけます。 たとえば、WSUS ポリシーの名前が WSUS の場合は、[コンピューターの設定] セクションの [適用されたグループ ポリシー オブジェクト] 見出しの下にある GPRESULT.TXT ファイルで見つけることができます。 次に例を示します。
Applied Group Policy Objects
-----------------------------
Default Domain Policy
WSUS
Local Group Policy
WSUS 設定が存在しない場合、考えられる原因は次のとおりです。
- システムにはドメインからのグループ ポリシーがありません。
- グループ ポリシーはクライアント システムを対象としていません。
この問題を解決するには、各クライアントでグループ ポリシーが正常に更新されていること、および WSUS 設定が適切に構成されていることを確認します。
クライアントでグループ ポリシーを更新するには、コマンド プロンプトから を実行GPUpdate /force
します。
WSUS クライアントのグループ ポリシーの構成の詳細については、「グループ ポリシーを使用して自動更新を構成する」を参照してください。
BITS に関連する問題を確認する
バックグラウンド インテリジェント転送サービス (BITS) は、MICROSOFT Update から メイン WSUS サーバー、WSUS サーバーからクライアントに更新プログラムをダウンロードするために WSUS によって使用されるサービスです。 ダウンロードの問題の一部は、サーバーまたはクライアント コンピューターの BITS に関する問題が原因である可能性があります。 ダウンロードの問題をトラブルシューティングするときは、影響を受けるすべてのコンピューターで BITS が正しく実行されていることを確認する必要があります。
BITS サービスは、既定で LocalSystem アカウントで実行する必要があります。 正しいアカウントで実行するようにサービスを構成するには、次の手順に従います。
コマンド プロンプトを開き、次のコマンドを実行します。
sc config bits obj= LocalSystem
obj= と LocalSystem の間にスペースが必要です。 成功した場合は、次の出力が表示されます。
[SC] ChangeServiceConfig SUCCESS
BITS を停止して再起動します。
BITS サービスの状態を表示するには、コマンド プロンプトを開き、次のコマンドを実行します。
sc query bits
BITS が実行されている場合は、次の出力が表示されます。
SERVICE_NAME: bits
TYPE: 20 WIN32_SHARE_PROCESS
STATE: 4 RUNNING
BITS が実行されていない場合は、次の出力が表示されます。
SERVICE_NAME: bits
TYPE: 20 WIN32_SHARE_PROCESS
STATE: 1 STOPPED
通常、サービスを停止して再起動することで、BITS の問題を解決できます。 BITS サービスを停止して再起動するには、コマンド プロンプトから次のコマンドを実行します。
sc stop bits
sc start bits
注:
BITS を停止して再起動するには、ローカル管理者としてログオンする必要があります。
BITS が起動に失敗する
BITS サービスの開始に失敗した場合は、イベント ログで BITS 関連のエラーがないか調びます。 次の表を使用して、これらのエラーの原因を診断できます。
エラー名 | エラー コード | 説明 |
---|---|---|
ERROR_SERVICE_DOES_NOT_EXIST | 0x80070424 | 以下の BITS 構成の修復に関するセクションを 参照してください。 |
ERROR_SERVICE_NOT_IN_EXE | 0x8007043B | BITS が netsvcs svchost グループ内のサービスの 1 つとして一覧表示されない |
ERROR_SERVICE_DISABLED | 0x80070422 | BITS が無効になっています。 BITS サービスを有効にします。 |
ERROR_SERVICE_DEPENDENCY_DELETED ERROR_SERVICE_DEPENDENCY_FAIL | 0x80070433、0x8007042c | BITS サービスの依存関係の一覧に表示されるサービスを開始できません。 BITS サービスの依存関係リストが正しいことを確認します。 Windows Vista: RpcSs、EventSystem (ピア キャッシュが有効になっている場合は http.sys と LanManWorkstation も) Windows Server 2003: Rpcss、EventSystem Windows XP: Rpcss Windows 2000: Rpcss、SENS、Wmi |
ERROR_PATH_NOT_FOUND | 0x80070003 | Windows 以前の Vista: %ALLUSERSPROFILE%\Microsoft\Network が存在しません |
ERROR_FILE_NOT_FOUND | 0x80070002 |
Parameters キーがありません。 次のキーと値が存在することを確認します。HKLM\SYSTEM\CurrentControlSet\Services\BITS\Parameters\ServiceDll = %SystemRoot%\System32\qmgr.dll |
REGDB_E_CLASSNOTREG、EVENT_E_INTERNALERROR | 0x80040154、0x80040206 | Windows 2000 の BITS は、SENS サービスと EventSystem サービスに依存します。 COM+ カタログが破損している場合、BITS がこのエラー コードで失敗する可能性があります。 |
BITS ジョブが失敗しています
クライアントが更新プログラムを受信するように適切に構成され、BITS が正しく構成されていて、BITS が正常に起動して実行されるように見える場合、BITS ジョブ自体が失敗する問題が発生している可能性があります。 これを確認するには、イベント ログで BITS 関連のエラーがないか調べます。 次の表を使用して、これらのエラーの原因を診断できます。
エラー名 | エラー コード | 説明 |
---|---|---|
E_INVALIDARG | 0x80070057 | ユーザーのインターネット エクスプローラー プロキシ設定で正しくないプロキシ サーバー名が指定されました。 このエラーは、NTLM/Negotiate ではないが、ユーザー名またはパスワードが null である認証スキームに資格情報が指定されている場合にも表示されます。 ユーザーのインターネット エクスプローラー プロキシ設定を有効なプロキシ サーバーに変更します。 または、NTLM/Negotiate 以外のスキームの資格情報を NULL ユーザー名/パスワードに変更します。 |
ERROR_WINHTTP_NAME_NOT_RESOLVED | 0x80072ee7 | サーバー/プロキシを BITS で解決できませんでした。 ジョブ所有者のコンテキストで同じコンピューター上のインターネット エクスプローラーでも、同じ問題が発生します。 ジョブ所有者のコンテキストを使用して、Web ブラウザー経由で同じファイルをダウンロードしてみてください。 |
ERROR_HTTP_INVALID_SERVER_RESPONSE | 0x80072f78 | これは一時的なエラーであり、ジョブのダウンロードは続行されます。 |
BG_E_INSUFFICIENT_RANGE_SUPPORT | 0x80200013 | BITS では、HTTP 要求で範囲ヘッダーを使用して、ファイルの一部を要求します。 サーバーまたはプロキシ サーバーが範囲要求を理解せず、要求された範囲ではなく完全なファイルを返す場合、BITS はジョブをこのエラーで ERROR 状態にします。 エラー中にネットワーク トラフィックをキャプチャし、 Range ヘッダーを使用した HTTP GET 要求が有効な応答を取得しているかどうかを調べます。 プロキシ サーバーを調べて、Range 要求をサポートするように正しく構成されていることを確認します。 |
BG_E_MISSING_FILE_SIZE | 0x80200011 | BITS がHEAD要求を送信し、サーバー/プロキシが応答で Content-Length ヘッダーを返さない場合、BITS はこのエラーでジョブを ERROR 状態にします。 プロキシ サーバーと WSUS サーバーが正しく構成されていることを確認します。 Apache 2.0 プロキシ サーバーの一部のバージョンでは、この動作を示すことが知られています。 |
BG_E_HTTP_ERROR_403 | 0x80190193 | サーバーがいずれかの要求で HTTP 403 応答を返すと、BITS はジョブをこのエラー コードと共に ERROR 状態にします。 HTTP 403 は、禁止: アクセスが拒否されましたに対応しています。 ジョブを実行しているアカウントのアクセス許可を確認します。 |
ERROR_NOT_LOGGED_ON | 0x800704dd | SENS サービスがユーザー ログオン通知を受信していません。 BITS (バージョン 2.0 以降) は、サービス コントロール マネージャーからのログオン通知に依存します。これは、SENS サービスによって異なります。 SENS サービスが開始され、正しく実行されていることを確認します。 |
破損した BITS 構成を修復する
破損した BITS サービス構成を修復するには、BITS サービス構成を手動で入力します。
注:
このアクションは、他のすべてのトラブルシューティングの試行が失敗した状況でのみ実行する必要があります。 BITS 構成を変更するには、管理者である必要があります。
破損した BITS 構成を修復するには、次の手順に従います。
コマンド プロンプトを開きます。
次のコマンドを入力し、各コマンドを入力した後に Enter キーを押します。
sc config bits binpath= "%systemroot%\system32\svchost.exe –k netsvcs" sc config bits depend= RpcSs/EventSystem sc config bits start= delayed-auto sc config bits type= interact type=own sc config bits error= normal sc config bits obj= LocalSystem sc privs bits privileges= SeCreateGlobalPrivilege/SeImpersonatePrivilege/SeTcbPrivilege/SeAssignPrimaryTokenPrivilege/SeIncreateQuotaPrivilege sc sidtype bits unrestricted sc failure bits reset= 86400 actions=restart/60000/restart/120000
BITS を停止して再起動します。
WSUS エージェント サービスに関する問題
Windows Update サービスが正常に開始できることを確認します。
Windows Update サービスの現在の状態を表示するには、コマンド プロンプトを開き、次のコマンドを実行します。
sc query wuauserv
WUAUSERV が実行されている場合は、次の出力が表示されます。
SERVICE_NAME: wuauserv
TYPE: 20 WIN32_SHARE_PROCESS
STATE: 4 RUNNING
WUAUSERV が実行されていない場合は、次の出力が表示されます。
SERVICE_NAME: wuauserv
TYPE: 20 WIN32_SHARE_PROCESS
STATE: 1 STOPPED
WUAUSERV サービスを正常に開始できることを確認します。 WUAUSERV を停止して再起動するには、ローカル管理者としてログオンする必要があります。
WUAUSERV サービスを開始するには、コマンド プロンプトから次のコマンドを実行します。
sc start wuauserv
クライアント エージェントが正常に起動して実行できない場合は、Windows Update エージェントのバージョンをチェックします。 エージェントが最新でない場合は、Windows Update エージェントを最新バージョンに更新します。
Windows Updateコンポーネントをリセットすることもできます。
修正プログラムを実行するか、エージェントを更新したら、 を実行 wuauclt /detectnow
します。 windowsupdate.logを確認して、問題がないことを確認します。
WSUS サーバーにクライアントから到達可能であることを確認する
URL http://<WSUSSERVER:port>/iuident.cab
にアクセスし、エラーなしでファイルをダウンロードできることを確認します。
WSUS サーバーにクライアントから到達できない場合、最も可能性の高い原因は次のとおりです。
- クライアントに名前解決の問題があります。
- プロキシ構成の問題など、ネットワーク関連の問題があります。
ネットワークで名前解決が機能していることを確認するには、標準のトラブルシューティング手順を使用します。 名前解決が機能している場合、次の手順はプロキシの問題をチェックすることです。 windowsupdate.log (C:\windows) を確認して、プロキシ関連のエラーがあるかどうかを確認します。 コマンドをproxycfg
実行して、WinHTTP プロキシ設定をチェックできます。
プロキシ エラーが発生した場合は、[インターネット エクスプローラー ツール>Connections>>LAN 設定] に移動し、正しいプロキシを構成してから、指定した WSUS URL にアクセスできることを確認します。
完了したら、 コマンドを使用して、これらのユーザー プロキシ設定を WinHTTP プロキシ設定に proxycfg -u
コピーできます。 プロキシ設定を指定したら、コマンド プロンプトからを実行wuauclt /detectnow
し、エラーをチェック windowsupdate.logします。
自動更新エージェント ストアを再構築する
更新プログラムのダウンロードに問題があり、ソフトウェア配布ストアに関連するエラーが発生した場合は、クライアントで次の手順を実行します。
- コマンド プロンプトからを実行
sc stop wuauserv
して、自動更新 サービスを停止します。 - ソフトウェア配布フォルダーの名前を変更します (C:\Windows\SoftwareDistribution など)。
- コマンド プロンプトからを実行
sc start wuauserv
して、自動更新サービスを再起動します。 - コマンド プロンプトから を実行
wuauclt /resetauthorization /detectnow
します。 - コマンド プロンプトから を実行
wuauclt /reportnow
します。
同じ SUSclient ID を持つクライアントを確認する
コンソールに表示される WSUS クライアントが 1 つだけである問題が発生する可能性があります。 または、クライアントのグループのうち、一度に 1 つだけがコンソールに表示されますが、表示される正確なクライアントは時間の経過と同時に変化する可能性があることに気付く場合があります。 この問題は、システムがイメージ化され、クライアントが同じ SUSclientID
を持つ場合に発生する可能性があります。
同じ SUSclientID
が原因で正常に動作しないクライアントの場合は、次の手順を実行します。
コマンド プロンプトからを実行
sc stop wuauserv
して、自動更新 サービスを停止します。次の
SUSclientID
場所からレジストリ キーを削除します。HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\WindowsUpdate
コマンド プロンプトからを実行
sc start wuauserv
して、自動更新サービスを再起動します。コマンド プロンプトから を実行
wuauclt /resetauthorization /detectnow
します。コマンド プロンプトから を実行
wuauclt /reportnow
します。