累積的な更新プログラムのインストール失敗 エラー 0x8007002

最終更新日

一般的なアップデートエラー対策が全く効かなかった。

Windows 10 Version 1511用の2017年3月の累積的な更新プログラム KB4013198

「Windows更新プログラムを構成できませんでした 変更を元にもどしています」で、どうしてもインストールできませんでした。エラーコード 0x80070002。

以前の記事(Windows10 Windows Updateに何度も失敗する。)に書いたことは、Windowsの初期化以外全てやってみましたが効果がなく、結局あきらめました。

脆弱性の方が気になりつつも、ひと月待って4月の累積的な更新プログラム KB4015219をインストール。4月のもダメなら、クリーンインストールするつもりでした。

実は、4月の累積的な更新プログラムも1回失敗しています。3月分をインストールしていませんから、4月のをインストールしようとすれば、3月分も同時にインストールされることになります。エラーも引き継がれる可能性があったわけですね。甘かった。

対策を講じてから、再度インストールしてみたら成功しました。

ログを見よう。

  • C:\Windows\Logs\CBS\CBS.log
  • C:\Windows\Logs\CBS\CbsPersist_….log
  • C:\Windows\servicing\Sessions\Sessions.xml
  • C:\Windows\WinSxS\poqexec.log
  • C:\Windows\INF\setupapi.dev.log

上記のログは、イベントビューアー→Windowsログ→Applicationのログ(ソース:Windows Error Reporting)に記されていたものです。

その内、2つのログにエラー理由が書かれていました。

ログからわかった問題点

CbsPersist_….log

(抜粋)

Not able to add file to extract: update.ses [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]

DriverUpdateInstallUpdates failed [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]

Doqe: Failed installing driver updates [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]

Failed installing driver updates [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]

Shtd: Failed while processing non-critical driver operations queue. [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]

0x80070002 - ERROR_FILE_NOT_FOUND … ファイルが見つからない。

"Failed installing driver updates" とあることから、更新対象のドライバ、あるいは関連するファイルが無いか、ファイル・フォルダーにアクセスできないようです。

etupapi.dev.log

!!! inf: INF 'C:\Windows\System32\DriverStore\FileRepository\input.inf_amd64_380f3bce67283116\input.inf' could not be found. Code = 1000

!!! sto: Failed to get version info for driver update 'C:\Windows\System32\DriverStore\FileRepository\input.inf_amd64_380f3bce67283116\input.inf'. Error = 0x00000002

0x00000002 … ERROR_FILE_NOT_FOUND = ファイルが見つからない。

こちらは、フォルダー(C:\Windows\System32\DriverStore\FileRepository\input.inf_amd64_380f3bce67283116)の中にinput.infが見つからないというエラー。ドライバのバージョン情報が得られないと書かれています。

実際にそのフォルダーの中を見てみたら、input.iniがありませんでした。input.infは、入力デバイスのドライバインストール設定が書かれたファイルです。

特定のフォルダーが無いとインストールできないことがある。

さらに、0x80070002でネット検索したら下のURLがヒットしました。(先月は気づきませんでした……)

https://answers.microsoft.com/ja-jp/windows/forum/windows8_1-update/windows/3e128f2f-f9ee-4c01-91c2-4db8cbd2bf64

(1年以上前の)Windows 更新プログラムの件です。要点は、更新失敗した理由が特定のフォルダーが無かったことにあるため、そのフォルダーを作成したら解決した、ということです。

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Accessibility (= C:\ProgramData\Microsoft\Windows\スタート メニュー\プログラム\Windows 簡単操作)等。

今回、そのフォルダーはあるから関係ないかと思ったら、フォルダーのアクセス権に削除済みのユーザーアカウントが残っていました。こういうのがあると、フォルダーのアクセスに支障をきたすことがあります。

更新失敗回避のために試したこと

以上を踏まえ、やってみたことが次の3つ。

  1. 紛失したiniファイルを他のフォルダーからコピー。
  2. ドライバの自動アップデートを有効に。
  3. フォルダーのアクセス許可エントリーから、不要なアカウントを削除。

紛失したiniファイルをコピーして補う。

input.infが無いとエラーが出ていたため、他のフォルダーから、問題のフォルダー(C:\Windows\System32\DriverStore\FileRepository\input.inf_amd64_380f3bce67283116)にコピーしました。

フォルダー名のinput.inf_以下の部分は、Windowsのバージョン等によって異なります

コピー元は
C:\Windows\INF\input.inf
C:\Windows\WinSxS\amd64_input.inf_31bf3856ad364e35_10.0.10586.420_none_8d8bf6d07f1697ee\input.inf
のいずれか。ファイルの更新日・サイズ・内容が同じだったため、壊れていなければどちらでもokでした。

ドライバの自動アップデートを有効にする。

(デフォルト設定は有効です)
無効にしてあったのを有効にしてみました。ドライバの自動アップデートは、通常のWindows Updateとは別のはずですが、念のため。

手順

  1. C:\Windows\System32\SystemPropertiesHardware.exe を起動
  2. デバイスのインストール設定
  3. デバイス用に利用可能な製造元のアプリとカスタムアイコンを自動的にダウンロードしますか?→はい
  4. 変更の保存

フォルダーのアクセス権から、削除ずみのユーザーアカウントを削除

削除済みのユーザーアカウントのアクセス権が下のフォルダーに残っていました。フォルダーを右クリック→プロパティ→セキュリティから削除しました。

  • C:\ProgramData\Microsoft\Windows\Start Menu
  • C:\ProgramData\Microsoft\Windows\Start Menu\Programs
  • C:\Users\%username%\AppData\LocalLow
  • C:\Users\%username%\AppData\Roaming

フォルダーのアクセス権のエントリーに、不明なアカウント S-1-5-21-…

削除したのは、「不明なアカウント(S-1-5-21-…)」です。SID(Security Identifier)がS-1-5-21…以外の「不明なアカウント」があっても削除はしません。

レジストリのHKEY_USERSキーには、消したユーザーアカウントのは残っていませんでした。残っていたらそちらも削除しなければならないところでした。

ようやくアップデート成功

その後Windows Updateしてみたら、累積的な更新プログラムが適用されました。

残念ながら、3つの内どれが本当に効果があったのか特定することができませんでした。(アップデート後にシステムイメージのバックアップをしたら、古いイメージが削除されてしまったため、状況を再現できませんでした。バックアップのバックアップを忘れてました)

一番候補はiniファイルで、全く関係なさそうなのがドライバの自動アップデート無効かと推測しています。

一応、3月のKB4013198の内容に、「Roamingユーザープロファイル使用時に、スタートメニューやその他の項目が消えたり、誤動作する問題の修正」なんてものがあります。

[参照]
2017 年 3 月 15 日 ― KB4013198 (OS ビルド 10586.839)
https://support.microsoft.com/en-us/help/4013198/windows-10-update-kb4013198

ログに記載されたエラー内容によって、対応を変えてください。
関連記事