連載
» 2018年10月30日 05時00分 公開

Windows 10 The Latest:Windows 10の更新プログラム適用で地雷を踏まないためのWindows Update運用法 (2/2)

[塩田紳二,著]
前のページへ 1|2       

Homeエディションの場合

 Homeエディションの場合、アップデートの延期は基本的にはできないが、安全な方法としては以下の2つの回避策がある。

  • Windows Updateサービスを「無効」にすること
  • 特定のアップデートを禁止すること

 これ以外にも、フリーソフトウェアなどでHomeエディションのWindows Updateを制御するものもある。こちらについては、確実に安全と判定できるものを見つけることができなかった。必要なら、ご自身のリスクで利用してほしい。

 Windows Updateサービスを止める方法は、危険ではあるが、今のところこれしか方法がない。アップデートされないリスクもあるが、アップデートで障害が発生するリスクもある以上、一時的にWindows Updateを停止することはやむを得ない対策である。

 前述の2つを使ったHomeエディションの安全で面倒のない運用方法は、機能アップデートのダウンロードが始まったら、「Show or hide updates」ツール(後述)で機能アップデートを無効化し、1〜2カ月後安全を確認してから機能アップデートのインストールを行うというものになる。

Windows Updateサービスを止める

 Windows Updateサービスを止めるには、管理ツールの「サービス」を使うのが簡単だ。[スタート]メニュー−[Windows管理ツール]−[サービス]を開き(タスクマネージャーの[サービス]タブの一番下にある[サービス管理ツールを開く]からも起動可能)、「Windows Update」を捜し、プロパティを開く。[停止]ボタンを押してサービスを止めたら「スタートアップの種類」を「無効」にする。

 Windows Updateサービスを再開させたい場合「スタートアップの種類」を「手動」にしておく。これで適当なタイミングでサービスが起動される。

[サービス]画面 [サービス]画面
[管理ツール]−[サービス]を開き、「Windows Update」をダブルクリックしてプロパティを開く。
[Windows Updateのプロパティ]画面 [Windows Updateのプロパティ]画面
「サービスの状態」の下にある[停止]ボタンをクリックして、サービスを停止する。その後、「スタートアップの種類」を「無効」に変更する。

 もう1つの方法としては、管理者権限で起動したコマンドプロンプトからsc.exeコマンドを使う方法がある。コマンドラインで指定するWindows Updateサービスの名前は「wuauserv」である(詳細は、Tech TIPS「scコマンドでWindows OSのサービスを確認/一覧/開始/停止する」参照のこと)。コマンドラインを使う方法は、バッチファイルなどを作っておくことで簡単に起動できる。

用途 コマンド
サービスの起動 sc.exe start wuauserv
サービスの停止 sc.exe stop wuauserv
サービスの無効化 sc.exe config wuauserv start=disabled
サービスの有効化(手動) sc.exe config wuauserv start=demand
サービスの実行状態の確認 sc.exe query wuauserv
サービスの構成情報の取得 sc.exe qc wuauserv
全てのWindows Updateサービスを対象とした場合

 以下に、サービスの停止/再開/状態表示のバッチファイルを示す。

サービスの状態確認:wu.bat
@echo off
sc query wuauserv | find "STATE"
sc qc wuauserv | find "START_TYPE"
pause
 
サービスの停止:StopWu.bat
@echo off
sc.exe stop wuauserv | find "STATE"
sc.exe config wuauserv start=disabled
pause
 
サービスの再開:StartWu.bat
@echo off
sc.exe config wuauserv start=demand
sc.exe start wuauserv | Find "STATE"
pause

scコマンドによるWindows Updateサービスの停止/再開/状態確認
実行後にウィンドウがすぐに閉じないようにpauseコマンドを入れて、いずれもショートカットなどから直接起動できるようにしている。このリストをメモ帳などに入力し、拡張子を.batとして保存すればよい。

 ただし、Windows 10では、何らかの定期的に起動されるサービス/タスクなどで、Windows Updateサービスが再開されることがある。幾つか条件を試したが、再起動で必ず有効になるわけでもないようだ。今のところ、どのプロセスがWindows Updateサービスを有効にしているのかが分からないので、時々チェックする必要がある。

 筆者がWindows 10 Ver. 1803で確認したところでは、数日程度なら再起動してもWindows Updateサービスが停止したままだった。Windows Updateサービスが停止しているときに、[Windowsの設定]−[更新とセキュリティ]−[Windows Update]で更新の確認を行うと、エラーとなり、コード「0x80070422」が表示される。簡易には、このエラー表示をWindows Updateサービスが停止しているかどうかの確認として利用できる。

Windows Updateのエラー画面 Windows Updateのエラー画面
Windows Updateサービスを停止した状態で更新プログラムのチェックを実行すると、このようにエラーが表示される。

 前述したように、現在の品質アップデートで配布される「累積更新プログラム」では、過去に適用したものと、そうでないものを区別してダウンロード、インストールを行うようになっているため、簡単に言うと、長時間Windows Updateを止めていると再開時のアップデート処理に時間がかかるようになる。このため、Windows Updateサービスを停止する時間は、できるだけ短くした方が、PCを利用できない時間を短くできる上、複数回に分散されることから、結果的に可用性を下げずに済むだろう。

特定のアップデートを禁止する方法

 特定のアップデートを禁止するには、Microsoftが配布しているツール「Show or hide updates」(トラブルシューティングパックキャビネット)である「wushowhide.diagcab」ファイルを使う。Microsoftの「Windows 更新プログラムが Windows 10 に一時的に再インストールされないようにする方法」ページからダウンロードしてきたら、適当なフォルダに置き、エクスプローラーからダブルクリックで起動させる。

Windowsのサポートページの画面 Windowsのサポートページの画面
Microsoftの「Windows更新プログラムがWindows 10に一時的に再インストールされないようにする方法」ページから「Show or hide updates」ツールをダウンロードする。

 ウィザード形式で起動し、現在Windows Updateが把握しているアップデートのリストが表示されるので、必要なアップデートのチェックボックスを「オン」にして[次へ]ボタンで実行を継続する。

「Show or hide updates」ツールでアップデートを延期する(1) 「Show or hide updates」ツールでアップデートを延期する(1)
「Show or hide updates」ツールを起動して、[次へ]ボタンをクリックする。
「Show or hide updates」ツールでアップデートを延期する(2) 「Show or hide updates」ツールでアップデートを延期する(2)
アップデートの適用を延期するには「Hide updates」をクリックする。
「Show or hide updates」ツールでアップデートを延期する(3) 「Show or hide updates」ツールでアップデートを延期する(3)
延期したいアップデートにチェックを入れる。
「Show or hide updates」ツールでアップデートを延期する(4) 「Show or hide updates」ツールでアップデートを延期する(4)
「見つかった問題」に適用が延期されているアップデートが表示される。

 この設定が終了すると、指定したアップデートは、Windows Updateには表示されなくなるため、インストールが行われることはない。ただし、このツールでは、Windows Updateが把握している(つまり、これからダウンロード、インストールしようとしている)アップデートしか対象にできない。このため配布が始まっていないアップデートを事前に隠すことはできないので注意すること。

HomeエディションユーザーにおすすめのWindows Updateの運用方法

 具体的な運用としては、以下のようにするといいだろう。

  1. 機能アップデート配布直前(毎年3月31〜4月1日、9月30日〜10月1日ごろ)にWindows Updateサービスを停止
  2. 機能アップデートの配布のアナウンスなどを確認(IT系ニュースなどで必ず報道される)
  3. Windows Updateサービスを再開
  4. [Windowsの設定]−[更新とセキュリティ]−[Windows Update]の[更新プログラムのチェック]ボタンを押す(手動更新)
  5. 機能アップデートが表示されたら「Show or hide updates」で機能アップデートの表示を禁止
  6. 表示されなければ、Windows Updateサービスを停止。適当に待ち、「3.」から同じ手順を繰り返す

 すでに機能アップデートのダウンロードが開始されていたら、その場で「Show or hide updates」ツールを使っても間に合う。機能アップデートはダウンロードからインストール準備などに時間がかかるので、Windows Updateサービスを止めずに、ギリギリで回避することも不可能ではない。ただし、アップデート処理が完了し再起動を待っている状態になってしまったら、もうアップデートを止めることができないので注意が必要だ。

 同様のやり方で毎月第2火曜日(日本だと第2水曜日未明)に開始される品質アップデートを延期させることも可能だ。月曜日にWindows Updateサービスを停止し、水曜日以降に再開して手動更新で「累積更新プログラム」が表示されたら、「Show or hide updates」ツールでこれを「hide」に指定する。あとは必要に応じて「Show or hide updates」ツールで表示を戻せば、品質アップデートが適用される。ただし、品質アップデートを延期するのは、障害が発生していることがニュースになるなど、明らかに危ないと分かる場合のみに限定した方がいいだろう。

「Windows 10 The Latest」のインデックス

Windows 10 The Latest

前のページへ 1|2       

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。