treedown’s Report

システム管理者に巻き起こる様々な事象を読者の貴方へ報告するブログです。会社でも家庭でも"システム"に携わるすべての方の共感を目指しています。

※https化しました。その影響でしばらくリンク切れなどがあるかもしれませんが徐々に修正していきます。 リンク切れなどのお気づきの点がございましたらコメントなどでご指摘いただけますと助かります。

Windows Updateで0x80070002のエラー

Windows Updatedeエラーが発生し、コマンドプロンプトで対処できたのでご報告します。

発生したエラー

Windows Updateがエラーが出てストップ
エラーコードは「0x80070002」でした。

後で再試行されます、というメッセージも出ているのですが、これはたぶん再試行でも失敗するパターンに思えます。

対処方法

管理者で起動したコマンドプロンプトから
sfc /scannow
を実行して修復したところ、Windows Updateがふたたび動作しはじめました。

f:id:treedown:20191128142424p:plain

実行した画面

--------------------------------------------------------------
Windows リソース保護により、破損したファイルが見つかりましたが、それらは正常に修復されました。
オンライン修復の場合、詳細は次の場所にある CBS ログ ファイルに含まれています
windir\ Logs\CBS\CBS.log (たとえば C:\Windows\Logs\CBS\CBS.log)。オフライン修復の場合、
詳細は /OFFLOGFILE フラグによって指定したログ ファイルに含まれています。
--------------------------------------------------------------

これを実行したあとは、すんなりとWindows Updateが動作しはじめました。

原因は?

推測ですが、sfcコマンドの実行結果にある「Windows リソース保護により、破損したファイルが見つかりましたが、それらは正常に修復されました。」という記述から考えると、Windows Updateが必要とするファイルやフォルダの一部に破損や消失があった(あるいはその他の要因で読み込みできないファイルが存在した)という可能性が考えられます。
概ね、Windows Updateの構成ファイルや関連ファイルは「C:\Windows\SoftwareDistribution」に格納されますので、この位置のファイルに問題があったのかも、と考えています。

メッセージにあった「%windir%\Logs\CBS\CBS.log」ログファイルを確認してみましたが、内容はパッと見て分かるような感じではありませんでした。ここらはもうちょっとちゃんと学習しないと記載の意味が分からないようです。