ちょっと前のことですが、備忘録としてこの記事を書きたいと思います。
2018年5月にWindows 10の新バージョン1803(April 2018 Update)が配信されましたが、自宅のPCがぜんぜんアップグレードされず、不思議に思っていたことがありました。
そのまま6月に入り、1ヶ月もアップグレードされていませんでした。
こりゃおかしいなと思いまして、調べることにしたのです。
Windows 10に搭載のトラブルシューティングツールを使ってみると以下のエラーが出たのです。
Windows Updateデータベースにエラーが発生した可能性があります。
結論から申しますと、「C:\Windows\SoftwareDistribution」フォルダと、「C:\Windows\System32\catroot2」フォルダをリネームして、PCを再起動し、そして再度Windows Updateの更新プログラムのチェックをしたら直りました。
無事にApril 2018 Updateに上がりました。
ちなみに、上記のフォルダをリネームするためには、以下のサービスを停止しなければならないようです。
Windows Update Cryptographic Services Background Intelligent Transfer Service Windows Installer |
サービス停止して、フォルダをリネームして、いちおうサービス起動して、PC再起動して、、そして更新プログラムのチェック。
でもなんでWindows Updateデータベースの破損なんて起きたんだろうか。。。
今後も同じようなことがあったら役に立つかも。
関連記事
Windows Updateの状態をクリア(Windows 10とWindows Server 2016)
コメント
コメント一覧 (12件)
「C:\Windows\SoftwareDistribution」フォルダと、「C:\Windows\System32\catroot2」フォルダのリネーム後のフォルダ名を教えて下さい。よろしくお願いします。
リネーム後のフォルダ名は何でも良いです。「SoftwareDistribution.old」とか「catroot2.old」などWondowsが認識できなくなればOKです。
つまり、フォルダの名前を変えて、Windowsに「SoftwareDistribution」フォルダと「catroot2」フォルダを作り直させることがこのトラブルシュートの内容です。
リカバリーしかないかと半ば諦めかけてましたが、こちらの方法で見事に更新することができました。貴重な情報をありがとうございます。
本記事が役に立ってよかったです。
この方法で解決した方が他にもいることがわかると、有効なトラブルシュートであることがわかりますので助かります。
コメントありがとうございました。
超初心者からの質問をお願いします。今年3月に購入したPCで1903が更新されず、今現在1803であることが判明しました。MSやメーカー(NEC)のサイト見ていろいろやったのですが、改善されません。リカバリーだけが残った状態です。
再びトラブルシューティングにトライしたら、一回目は「データベースの破損で回復できず」が出て2回3回と繰り返すとOKになるのですが、何度やっても更新できません。
それで貴記事に巡り合い、とりあえずサービスの停止を確認したら、Windows Update と Crytographic Serviceがサービスのリストの中にありません。Windows Updateに関しては WaasMediacSvcというのが同じものなのかなという気もしますが、よくわかりません。
上記含め原因及び解決法についてご教示いただけないでしょうか?
解決するかどうかわかりませんが、リカバリしか手段が残されていないようですので、下記手順を実施してみていただけますでしょうか。
1.コマンドプロンプトを「管理者として実行」して起動する。
2.下記コマンドをコピペで貼り付けて実行する。
net stop wuauserv
net stop bits
ren %systemroot%\SoftwareDistribution SoftwareDistribution.old
del /Q %ALLUSERSPROFILE%\Microsoft\Network\Downloader\*
net start bits
net start wuauserv
3.更新プログラムの確認を再度実施する。
Cryptographic Servicesを停止して、catroot2フォルダをリネームしようとすると、このサービスが強制的に「実行中」に変化して、リネームできません。(リネーム実行中にサービスのプロパティで確認しました)
他3つのサービスは「停止中」のままです。
解決法がわかるようでしたら、ご教示いただけませんでしょうか?
返信遅れてすみません。
手動でサービスの停止だと、フォルダをリネームする前に起動してしまっているのだと思います。
わたくしの別の記事で、コマンドでWindows Updateの状態をクリアにする手順を書いていますので、下記記事を参考にしていただきたいです。
https://uncle-atsushi.com/windows-update_clear_command/
よろしくお願いします。
返信ありがとうございます。
ご教示いただいた方法で、catroot2フォルダはリネームできたのですが、Windows Updateには失敗します…
Windows Update失敗→トラブルシューティング→データベース破損→修正→…のループです…
関係ないかもしれませんが、グループポリシーでWindows Updateを制御しているということはないでしょうか。
①「ファイル名を指定して実行」⇒”gpedit.msc”と入力して[OK]をクリック。
②「コンピュータの構成」⇒「管理用テンプレート」⇒「Windowsコンポーネント」⇒「Windows Update」をクリックする。
③右側に表示される設定値が、すべて”未構成”であることを確認する。
もし”未構成”ではないものがあれば、”未構成”に戻してWindows Updateを再実行してみる。(個人用のPCであれば、グループポリシーのWindows Updateの項目はすべて未構成になっているはずです。よっぽどのことがない限り)
本記事も回復を絶対に約束するものではなく、「Windows Updateに失敗するときにとりあえずやってみる対処」として紹介しているものなので、もしWindows Updateに関わる様々な設定値を確認したうえで不可能であるならば、メーカーに問い合わせるか、データを退避したうえでリカバリするしかないと考えます。
返信ありがとうございます。
グループポリシーのWindows Updateの項目はすべて未構成でした…
ご返信ありがとうございます。
恐れ入りますが、メーカーサポートに問い合わせるか、重要データをバックアップしたうえで一度リカバリをした方が良いと存じます。