Windows Server: Windows Updateに失敗する場合の対処方法
概要: Windows Updateに失敗する場合の対処方法(弊社問い合わせ事例より、改善に至った対処方法のまとめ)
手順
Windows Updateに失敗時エラー情報の確認方法
原因を確認するためには、C:\Windows\Logs\CBS.logをメモ帳などで開き、Windows Updateに失敗したKB番号で検索することで、更新失敗時のErrorなどを確認できます。
対処方法一覧
- 直接ファイルから適用
- クリーンブート環境での適用
- セーフモード環境での適用
- セキュリティー対策ソフトウエアの停止、およびアンインストール
- コマンドによる原因となるKBパッケージの削除
- WinSxSフォルダーのクリーンアップ
- Windows Update Clientが保持する情報のリセット
- セキュリティーソフトの定義ファイルの更新
- Proxyサーバーまたはネットワーク上にファイアウォールがある場合の対応方法
- Windows Updateトラブルシューティングツールの実施
DISMコマンドによるWindowsイメージの修復sfcコマンドによるWindowsシステムファイルの修復- インプレースアップグレードによるシステム全体の上書き
1. 直接ファイルから適用
カタログサイトから、失敗するKBパッケージを直接ダウンロードし、手動で適用して回避する方法
WindowsUpdateカタログ
https://www.catalog.update.microsoft.com/Home.aspx
参考事例
CBS.logより、Update失敗のErrorが”Manifest doesn't exist”の場合の対処
カタログサイトよりダウンロードしたファイルを以下の手順で適用し解消した事例があります。
- 作業場所:
C:\Tempにダウンロードしたmsuファイルを配置し、さらに空のcabフォルダを作成します。 - 以下コマンドで、.msuファイルを展開し、.cabファイルを抽出。
Expand -F:* C:\temp\<xxx.msu> C:\temp\cab
- 以下コマンドでSSUおよびKBを適用。
Dism /online /add-package /packagepath:c:\temp\cab\<xxx.cab>
2. クリーンブート環境での適用
Windows以外のアプリケーションのサービスが更新を阻害している場合に有効な対処方法。
Windows Server: クリーンブート実施手順
3. セーフモード環境での適用
Windowsの標準サービスを含む要因が考えられる場合に有効な対処方法。
手順
- コマンドプロンプト(管理者)を起動し、セーフモード環境でWindows Updateが実行できるよう、以下のコマンドでサービスを構成します。
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal\MSIServer /ve /d Service REG ADD HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal\wuauserv /ve /d Service REG ADD HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal\BITS /ve /d Service REG ADD HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal\EventSystem /ve /d Service REG ADD HKLM\SYSTEM\CurrentControlSet\Control\SafeBoot\Minimal\ose64 /ve /d Service
- スタートメニューを右クリックし、ファイル名を指定して実行を開きます。
msconfigと入力し実行します。- システム構成の画面が表示されたら、ブートタブを開きます。
- 画面下のブートオプションにて、セーフブートをオンにします。
- OKで画面を閉じ、要求されたらシステムを再起動します。
- セーフモードで起動後、ダウンロードした適用したいKBをダブルクリックして実行します。
- 2~6の手順で設定したセーフブートの設定を元に戻し、システムを再起動します。
4. セキュリティー対策ソフトウエアの停止、およびアンインストール
カーネルレベルでセキュリティー対策ソフトが動作していることが原因となり更新を阻害している場合に有効な対処方法。
Windows Defenderの無効化手順
- サーバーマネージャーを開きます。
- 管理>役割と機能の削除の順に選択します。
- 役割と機能の削除ウイザードが開きますので、"機能"にて"Windows Defender Antivirus"のチェックを外し完了させます。
Windows Defenderのアンインストール手順
- PowerShellを管理者権限で起動します。
- 以下コマンドを実行します。
Uninstall-WindowsFeature -Name Windows-Defender
切り分け後は、以下コマンドでインストールできます。
Install-WindowsFeature -Name Windows-Defender
5. コマンドによる原因となるKBパッケージの削除
CBS.logにインストールを阻害している別のKBパッケージ、もしくはRollupFixが記録されている場合の対処方法。
KBパッケージの削除手順
-
wusa.exe /uninstall /kb:xxxxxx
-
dism /online /remove-package /packagename:パッケージID
例:
dism /online /remove-package /packagename:Package_for_RollupFix~31bf3856ad364e35~amd64~~17763.3287.1.7
6. WinSxSフォルダのクリーンアップ
Windowsの機能や更新プログラムのインストールまたはアンインストールなどに関係するファイルの格納場所(WinSxS)をクリーンアップする対処方法。
WinSxSフォルダーのクリーンアップ
https://learn.microsoft.com/ja-jp/windows-hardware/manufacture/desktop/clean-up-the-winsxs-folder?view=windows-11
手順
- スタートを右クリックしてコマンドプロンプト(管理者)をクリックします。
- コマンドプロンプトの画面にて、下記のコマンドを実行します。
Dism.exe /online /Cleanup-Image /StartComponentCleanup
/ResetBaseオプションについて
Dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase
/ResetBaseオプションを付けて実行すると、既にインストール済みの更新プログラムがアンインストールできなくなりますのでご留意ください。
/ResetBaseオプションを付けた方がフォルダサイズは縮小しますが、完了するまでの時間は長くなります。 - 操作が正常に完了したら、コマンドプロンプトを閉じます。
完了には時間がかかる可能性があるため、ご了承ください。
7. Windows Update Clientが保持する情報のリセット
WindowsUpdateを制御しているサービスを再起動することで解消される可能性があります。
作業履歴の情報のため、現時点の適用状態や今後の適用動作には全く影響ありません。
Windows Updateクライアントの情報をクリアにする手順
https://blogs.technet.microsoft.com/jpwsus/2014/12/02/windows-update-3/
手順
- スタートを右クリックしてファイル名を指定して実行をクリックします。
- "ファイル名を指定して実行"画面にて“services.msc”と入力してOKをクリックします。
- "サービス"画面にて、下記の順序で4つの各サービスを右クリックし、停止をクリックしてサービスを停止します。
既に"停止"状態のサービスはそのままで結構です。- "Update Orchestrator"サービス
- "Windows Update"サービス
- "Cryptographic Services"サービス
- "Background Intelligent Transfer Services"サービス
- エクスプローラを開き、下記のパスに移動します。
C:\Windows\SoftwareDistribution(フォルダ) - "SoftwareDistribution"フォルダを右クリックして名前の変更をクリックし、"SoftwareDistribution.old"に変更します。
- エクスプローラで下記のパスに移動します。
C:\Windows\system32\catroot2(フォルダ) - "catroot2"フォルダを右クリックして名前の変更をクリックし、"catroot2.old"に変更します。
- 管理者権限のコマンドプロンプトを開き、下記のコマンドを実行します。
del /Q %ALLUSERSPROFILE%\Microsoft\Network\Downloader\*
- 再度"サービス"の画面を開き、下記の順序にて各サービスを右クリックして開始をクリックし、サービスを再開します。
- "Background Intelligent Transfer Services"サービス
- "Cryptographic Services"サービス
- "Windows Update"サービス
- "Update Orchestrator"サービス
- 操作完了後に、該当のKBをダウンロードし、手動での適用可否をご確認ください。
8. セキュリティソフトの定義ファイルの更新
0x8024402c、0x80240438のエラーは、Microsoft社のアップデートサーバーへ接続ができないことを示すエラーコードです。
セキュリティーソフトが通信を阻害している可能性の切り分けのための、定義ファイル更新による対処方法。
Windows Defenderの場合の定義ファイル更新手順
- スタートから設定 > 更新とセキュリティ > Windows Defender > Windows Defenderを開く の順に選択します。
- Windows Defenderが表示されたら、タブから更新を選択し定義の更新を実施します。
9. Proxyサーバーまたはネットワーク上にファイアウォールがある場合の対応方法
Proxyサーバーまたはネットワーク上にファイアウォールがある場合、利用しない環境で更新をお試しください。
一般的なエラーと軽減策をWindows Updateする
https://docs.microsoft.com/ja-jp/windows/deployment/update/windows-update-errors
0x80072EFD、0x80072EFEまたは0x80D02002
Proxy環境で、Proxyを利用しない環境が用意できない場合の対処方法。
IEやChromeなどのブラウザで外部接続可能な場合は、以下のコマンドで解消される見込みがあります。
netsh winhttp import proxy source=ie
10. Windows Updateトラブルシューティングツールの実施
WindowsServer2022
スタート>設定>更新とセキュリティ>トラブルシューティング>追加のトラブルシューティングツールの順に選択します。
"起動して稼働中"の項目より"Windows Update"を選択し、"トラブルシューティングツールの実行"のボタンより実行します。
WindowsServer2019
スタート>設定>更新とセキュリティ>トラブルシューティング>"起動して稼働中"の項目より、"Windows Update"を選択し"トラブルシューティングツールの実行" のボタンより実行します。
WindowsServer2016
スタート>コントロールパネル>システムとセキュリティ>セキュリティとメンテナンス>トラブルシューティングの順に選択します。
左項目で"すべて表示"を選択し、一覧より"Windows Upadate"を選択して次へより実行します。
11. DISMコマンドによるWindowsイメージの修復
Windowsイメージに問題があることが影響している場合、解消される可能性があります。
Windows Server: DISMコマンドでの修復手順
12. sfcコマンドによるWindowsシステムファイルの修復
ファイルシステムに問題があることが影響している場合、解消される可能性があります。
Windows Server: SFCコマンドでの修復手順
13. インプレースアップグレードによるシステム全体の上書き
既存OSを同バージョンに上書きすることで、システム破損が原因の場合解消される可能性があります。
Windows Server: OSインプレースアップグレード手順
上記1.~13.までの対処で解決できない場合の対応策は、OSの再インストールをご検討ください。