GCP / Windows Server 2016 インスタンスの Windows Update 変更手順メモ
GCPのWindows Server 2016 インスタンスで、GUIから WindowsUpdate を 手動 に変更出来ない。どうやって変更したらええの? もしくは Windows Update サービス無効化できね? ということを聞かれて調べたのでメモ
結論
- パッチの自動ダウンロード/手動更新への変更
- "sconfig.cmd" により
自動・ダウンロードのみ・手動
のいずれかが選択できる。
- "sconfig.cmd" により
- Windows Update サービスの無効化
- 設定はできるけど無理矢理やってる感じなので、別の不具合が生じる可能性があるかも。
- "Update Orchestrator Service" を停止すると "更新状態" が見れなくなる。
- Windows Defender のアップデートほか、Windows Update サービスを利用して更新を受け取るものは影響を受けるかも。
想定環境
- GCP > Windows Server 2016 インスタンス
- 日本語化された環境であることを前提としてメモ
設定手順
パッチの自動ダウンロード/手動更新への変更
設定方法
- 左下の Windows マークで右クリック > コマンドプロンプト(管理者) を起動
- プロンプトで "sconfig.cmd" を実行
- 変更前に "5) Windows Update の設定" の値を確認(GCP既定では "自動")
- メニューが表示されたら "5) Windows Update の設定" を選択 ("5" を入力し Enter)
- 以下3通りから選択できる
- 自動更新(A) ※既定
- ダウンロードのみ(D)
- 手動更新(M)
- 手動にする場合は "M" を入力
- "5" の内容が選択された内容に更新された事を確認
- (可能であれば) 再起動を行い、再度 sconfig.cmd を実行し設定が維持されている事を確認しとくと良いかも?
確認方法
- サーバマネージャを起動 > ローカルサーバを選択 > Windows Update の表記が変わっている事を確認
- 手動(無効)の場合 "更新プログラムを確認しない" になる。
- レジストリエディタを起動し、自動更新が無効にされている事を確認しとく。
- キー:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU
- 値:
NoAutoUpdate : 1
(Reg_DWORD)
- キー:
注意事項
- Windows の設定 > Windows Update、回復 > 更新状態 では "今後も、最新の更新プログラムを毎日チェックします" と表記されてるけど、これはたぶん Windows Update ではなく "Update Orchestrator Service" のメッセージだと思うので無視して大丈夫(?)
- 同画面の "更新プログラムのチェック" をクリックすると Windows Update が手動で実行されてしまうのでクリックしないように注意が必要
- グループポリシーか、レジストリエディタでフラグを立てたら、グレーアウトできると思うんだけど、よくわからんかった。
結果
- この設定を行ったインスタンスと、未設定のインスタンスを作成して2〜3日放置してみた。
- 設定を行ったインスタンス > Windows Update は実施されず (Windows Defender の定義ファイル更新はイベントログに出てた)
- 未設定のインスタンス > Windows Update が適用され、再起動が発生していた。
まあ、とりあえずこれで良い感じ?
Windows Updateサービスの無効化
注意
- サービスを無効化することは可能だけど、無理矢理やってる感じなので別の不具合が生じるかも
- "Update Orchestrator Service" まで停止すると "更新状態" が見れなくなる
- Windows Defender のアップデートほか、Windows Update サービスを利用して更新を受け取ってそうなものは影響を受けるかも。
サービスの無効化
Windows Update
- 左下の Windows マークで右クリック > コンピューターの管理
- サービス > サービスとアプリケーション
- "Windows Update" のサービスで 右クリック > プロパティ
- スタートアップの種類を "無効" にし、 適用をクリック
- 次に "停止" をクリックしサービスを停止
Update Orchestrator Service
- 続けて同じサービス一覧の画面から "Update Orchestrator Service" のプロパティを開く。
- 同サービスも "Windows Update" と同様に "無効" と "停止" を行う。
トリガーの無効化
- 左下の Windows マークで右クリック > コンピューターの管理
- タスクスケジューラ > タスクスケジューラライブラリ > Microsoft > Windows > WindowsUpdate を選択
- 以下4つのタスクすべてを 右クリック > 無効 にする。
- Automatic App Update
- Scheduled Start
- sih
- sihboot
- 続けて同タスクの一覧から "UpdateOrchestrator" を選択
- 以下9つのタスクすべてを 右クリック > 無効 にする。
- Maintenance Install
- MusUx_LogonUpdateResults
- Policy Install
- Reboot
- Refresh Settings
- Resume On Boot
- Schedule Scan
- USO_UxBroker_Display
- USO_UxBroker_ReadyToReboot
これでサービスとしては止まったっぽいけど、ググッてみると何かのタイミングでタスクが有効に戻ったりとかするみたい? まあ sconfig.cmd
で困らない状態には出来たので、ここから先は確認してない。
参照
- How can we disable Windows Automatic Updates (Google Cloud Machine)
- Windows 10 / Windows Server 2016 でも Windows Update の自動更新は止められます
- イベントビューアで WindowsUpdate と再起動のイベントだけを見る
以上 c⌒っ゚д゚)っφ メモメモ...