[ Vista Tips ] 第十回 Windows Update エラー 80070002

Windows Update が エラー 80070002 で完了しない

例外を除くと毎月二週目半ばに到来する Windows の月例更新は複数のパッチが登場します。

複数パッチが存在する場合、稼働しているプロセスに干渉するパッチはマシンを再起動させて何回かに分けてマシンを更新させることになります。
Windows がノーマルな状態であれば Update は(一応)再起動を考慮した正当な順序を構成しようと試みますが、サービスに関わるカスタマイズを施していたり何らかの理由でパッチ対象が消失していた場合 Update は対象をスキップして再起動後のタスクにストアします。

このタイミングで問題が発生するとタスクが正常に登録されず CHKDSK のデッドタスクのような面倒を引き起こしかねません。

総じて留意していただきたいのは再起動はするべく箇所で確実に行うこと。

再起動後に何度も Update に失敗したり、マイクロソフトのサポート技術情報でも見つからなかったという場合には以下をお試しいただければと思います。

蓄積された一時キャッシュが解消しないことで発生する Windows Upadate エラー 80070002 。

オンラインヘルプなどで参照いただける事項ではあるのですが、何人かの方にご質問をいただきましたので簡単にご説明いたします。

80070002 が発生する場合これらのキャッシュを削除することで解決することが多いようです。

Windows Update サービスを停止する
 1) 管理者権限で [管理ツール] から [サービス] を開きます。

 2) [ Windows Update ] サービスを右クリックし、[停止] をクリックします。

一時更新ファイルを削除する
 1) Windows がインストールされているドライブの一時ファイルを削除します。
  C:\WindowsSoftwareDistribution\DataStore 以下のファイルを削除します。
  C:\WindowsSoftwareDistribution\Download 以下のファイルを削除します。

Windows Update サービスを再起動する
 1) 管理者権限で [管理ツール] から [サービス] を開きます。

 2) [ Windows Update ] サービスを右クリックし、[再起動] をクリックします。

コンピュータを再起動し Update を再試行してください。

追記:改善されない?

KB935807 は US でも同様の現象が発生しているようで改善例(環境によって異なります) Tecnet Forum に書き込んだ fsutil を使ったリセット方法をこちらにも書いておきます。

 1) スタート→アクセサリ→コマンドプロンプト(管理者権限で)
 2) C:\Windows\system32>fsutil resource setautoreset true C:\
 (C はWindows のインストールされているドライブになります)

fsutil を実行する際には”操作は正常に終了しました”と表示されるのを確認してくださいね。