更新:2018年02月09日
WindowsUpdateによる更新が「進まない」「終わらない」場合の対処法
WindowsUpdateを実行しWindows7を更新しようとしたが不具合がある場合、以下をお試しください。
文章を簡潔にするため説明をかなり省略しています。
Windows7新規インストール環境、既存Windows7環境の両方に対応。
前準備と「しておくと良い」作法
・「★月例更新後に更新できなくなった」の当月分を
先にダウンロードしておく。
・
WSUS Offline Updateを使ったWindows7の更新を参考に
WSUS Offline Updateを先にダウンロードしておく。
更新が進まない事を見越して更新ファイルを取得しておくと尚良い。
・コンポーネントリセットツールを「
こちら」から
ダウンロードしておく。
・各対策でダウンロードした更新ファイルを実行する際は
WindowsUpdateが実行できない状態で作業する。
一番の近道は物理的にネットワークから切断する。
・ながら作業は厳禁
言うまでも無く再起動の要求や更新に影響があるから。
・慌てて作業しない
前工程の作業中に次の工程を実行したり
前工程の作業中に再起動を手動で行ったりは
作業の中断として新たな不具合を招く
・対象のWindows7が32Bit版か64Bit版かを確認する
更新プログラムがインストールできないと慌てる事が減る。
・セキュリティーソフトなどをインストールしている環境では
WSUS Offline UpdateのUpdateInstaller.exeで
Automatic reboot and recollをチェックして実行しないでください。
WSUS Offline Updateで最近「アカウント」絡みの誤動作が目立っています。
特に「ユーザーアカウント制御」を管理しているソフトは誤動作の元です。
★月例更新後に更新できなくなった(毎月10日前後)
3ヶ月以上遡って更新をしていないPCは「★長期間更新をしていない場合」を参照。
表記はWindows7 Home Premium 64Bit版で表示された更新ファイル
2018年02月(02月09日発表)
KB4015549 がインストールされていない環境はインストールする。
02月09日 KB2952664 Windows 7 で Windows を最新の互換性に関する更新プログラム
以上の更新ファイル(当月分だけで良い)をインストールし、再起動の後WindowsUpdateを試す。
「適用できない」系のエラーが出る場合は環境が整っていない場合があります。
「★長期間更新をしていない場合」を試す。
★状況を確認してみる
コンポーネントリセットツールを「
こちら」からダウンロードして実行します。
結果にエラーがある場合エラーを解消して再起動します。
「解消済み」がある場合WindowsUpdateを試してみる。
状況が改善されている場合があります。
・エラーが出た
「★エラーが出て解消できない」を試す。
・「最新の更新プログラムのインストールに関する問題」と言われる
「★長期間更新をしていない場合」を試す。
★長期間更新をしていない場合
WSUS Offline Updateを使ったWindows7の更新
こちらの記事を参考にWSUS Offline Updateを使って更新する。
更新が途中で止まったようになる場合は「★WSUS Offline Updateが止まったようになる」を参照。
ここまでの更新が必要。(環境が整う)
★Windows7を新規にインストールした場合
WSUS Offline Updateを使ったWindows7の更新の記事を参考に
WSUS Offline Updateを使って「重要更新」を先にインストールした後、
WindowsUpdateで更新を進めます。
手順
1、Windows7インストール
2、デバイスドライバインストール
※、この時点でWSUS Offline Updateを実行し更新プログラム収集してもよい
3、NET切断
4、WindowsUpdateの設定を「更新プログラムを確認しない」に変更
5、システムの保護を「無効」に設定(これは好みで:多少更新が早くなる)
6、WSUS Offline Update実行
Automatic reboot and recollにチェックを入れて実行。
更新が途中で止まったようになる場合は「★WSUS Offline Updateが止まったようになる」を参照。
「Ending.」と表示されるまで続ける。
7、NET接続
8、最新の状態までWindowsUpdateで更新を続ける
2017年11月27日正常インストール確認。
その後必要であればテレメトリ排除やスパイウェア対策を施すと良いでしょう。
更新完了後「Acronis True Image」等の外部のバックアップソフトで
Windows7をインストールしたストレージを丸ごとバックアップ
することをお勧めします。
これはWindows7が起動不能に陥った場合や新しくOSを入れ直したい場合など
現在までのWindows7インストールの手間を削減すると共に2020年以降の
Microsoftからのサポートが行われない状況下でのWindows7のインストール
でバックアップ当日までの重要・推奨更新を適用済みとして再帰できるからです。
★エラーが出て解消できない
WindowsUpdateの構成ファイルを初期化してみる
●初期化
以下の「ここから」「ここまで」をカットアンドペーストして新規テキストファイルに貼り付ける。
「ここから」
net stop wuauserv
net stop cryptSvc
net stop bits
net stop msiserver
ren %systemroot%\SoftwareDistribution SoftwareDistribution.old
ren %systemroot%\System32\catroot2 catroot2.old
del "%ALLUSERSPROFILE%\Microsoft\Network\Downloader\qmgr0.dat"
del "%ALLUSERSPROFILE%\Microsoft\Network\Downloader\qmgr1.dat"
net start wuauserv
net start cryptSvc
net start bits
net start msiserver
wuauclt /resetauthorization /detectnow
「ここまで」
貼り付けたテキストファイルを「WindowsUpdateReset.bat」に名前を変える。
管理者権限(ファイルを右クリックして選択)で実行する。
実行後WindowsUpdateを試してみる。
更新が成功したら以下の「複製ファイルの削除」を実行する。
●複製ファイルの削除(●初期化を実行した場合)
以下の「ここから」「ここまで」をカットアンドペーストして新規テキストファイルに貼り付ける。
「ここから」
net stop wuauserv
net stop cryptSvc
net stop bits
net stop msiserver
rmdir %systemroot%\softwaredistribution.old /q /s
rmdir %systemroot%\System32\catroot2.old /q /s
net start wuauserv
net start cryptSvc
net start bits
net start msiserver
shutdown /r /t 0
「ここまで」
貼り付けたテキストファイルを「WindowsUpdateDelete.bat」に名前を変える。
注意:自動的に再起動する(環境によりしない場合もある)
管理者権限(ファイルを右クリックして選択)で実行する。
★特定の更新プログラムがエラーとなる
ユーザーサイド要因
・Windows7をカスタムしすぎて必要サービスなどを止めているなど
PC設定や環境をカスタムする場合、元に戻すスクリプトも
同時に作っておくことが必要になってきた。
潜在要因
・初代Atom採用PCなどは特定KBでエラーとなり適用失敗する
これはMicrosoftが現在流通するWindows7マシン用にKBを作っているため
古いマシンの事を考えて作っていないと推測。(下位互換性破棄)
★WSUS Offline Updateが止まったようになる
最新のWSUS Offline Updateをダウンロードして使用してください。
同時に「更新プログラムの取得」も行い最新の状態で更新を行ってください。
不具合と判断する目安は30分以上変化がない場合。(機種により異なる)
Automatic reboot and recollにチェックを入れて更新した場合、
「Ending.」と表示があるまで必ず実行を継続する。
途中で中断した場合、作業用アカウントが残り以前の環境に戻らない場合がある。
★WSUS Offline Updateが途中で勝手に終了する
WindowsUpdateコンポーネントが壊れている可能性あり。
★エラーが出て解消できないを試してみる。
★しておくと良い作業
WindowsUpdate実行後、特にWindows7を新規インストールした環境では以下の作業を行うと良い。
復元ポイントの削除
・「システム」のプロパティで「システムの保護」を無効に設定。
・「構成」をクリックして「ファイルの保護を無効」にチェックを入れる。
・「適用」をクリック。
・「ディスク領域のの使用量」の「削除」をクリック。
・「システム設定とファイルの以前のバージョンを復元する」にチェックを入れる。
・「適用」をクリック。
・「OK」をクリックして終了。
新規にWindows7をインストール後、デバイスドライバをインストールし、
更新ファイルを現時点の総てをインストールし終えた時点で行うと良い。
(新規環境のためこれ以上戻す必要が無いため、復元ポイントはいらない)
ディスククリーンアップを行う
・ディスククリーンアップを起動、総ての項目にチェックを入れる。
・ディスククリーンアップを実行。
ストレージの不要なファイルを削除してストレージの空き容量を確保する。
場合により数GBの容量が確保できる。
(エラー報告ログが大量の容量を消費している)
ストレージがHDDの場合はデフラグを行う
・WindowsUpdate時の速度アップがある「かもしれない」。
・ストレージ内の整理は習慣付けておくと良い。
・SSD環境ではデフラグは行わない。SSDの寿命を削だけ。
メモリに余裕があればページファイルをなくす
・(最大で)メモリの容量分ストレージを節約できる。
・最低8GB以上のメモリを搭載したPCが望ましい。
ハイバーネーション(省電力スリープ)を行わない場合
・コマンドプロンプトを起動。以下のコマンドを実行する。
powercfg /hibernate off
このコマンドはハイバーネーション用ファイルを削除する。
ストレージに数GBの空き容量を確保できる。
★WSUS Offline Updateを使う理由
星の数ほどありそうな「ケースバイケース」に一々個別に対応できない。
であるならば「ローラー作戦?」的な対処法が必要になる。
WSUS Offline Updateは更新ファイルを事前に収集し、
問答無用で一から総てインストールしようと試みる。
そこで足りない更新や破損、故意に更新しなかったファイル等を補い
推奨環境に整える。
「話はそれから」である。
更新が進まない原因は過去の更新の「歯抜け」が殆どで
稀にユーザーが手を入れすぎた為に「必須から外れた」
設定になっている事も原因と言える。
こうして一度「推奨環境」に整えられた環境で
最新の更新を試し、成功したならば万歳三唱である。
原理的には
WSUS Offline UpdateはWindowsUpdateの更新ファイルを
後追いの形で収集できるようになるため遅くても1ヶ月もあれば
以前WindowsUpdateを進まなくしていた原因の更新ファイルも
UpdateGenerator.exe で取得可能になり、
取得後 UpdateInstaller.exe によりインストール可能になる。
以上により過去の更新プログラムはインストールされる訳なので
自ずとWindowsUpdateの環境は改善される事になる。
あとは間に合わなかった当月分の更新プログラムをインストールすれば
WindowsUpdateの不具合はほぼ解決できる。
テレメトリ系対策やスパイウェア対策は
更新ファイルを削除せずとも通信ポートに「蓋」をしたり
アンチスパイウェアソフト等でも十二分に機能する。
環境を破壊してまで更新ファイルを削るのは得策とは言えない。