kkamegawa's weblog

Visual Studio,TFS,ALM,VSTS,DevOps関係のことについていろいろと書いていきます。Google Analyticsで解析を行っています

Windows UpdateをPowerShellで設定する

Windowsの初期環境設定を自動化しよう第二弾。

Setting Windows Update timing for PowerShell

Active Directoryのグループポリシーで設定していれば不要なのですが、Active Directoryに参加していないもしくはポリシーが設定されていないサーバやPCのWindows Updateの設定を行うPowerShellスクリプトです。

Active Directoryのポリシーで設定されている場合、NotificationLevelを設定しようとすると例外になります。「管理者として実行」したPowerShellで実行してください。もともとActive Directoryのない環境用に用意しているものなので、この辺ん尾エラー処理は気にしないということで。

一応時刻指定をしていますが、Windows Server 2012から仕様が変わって、OSの再起動はメンテナンスタスクで行われます。更新のロールアップを適用することによりポリシーで設定することも可能です。

Windows 8 / Windows Server 2012 では 「自動インストール」 の動作が変更されております - Japan WSUS Support Team Blog - Site Home - TechNet Blogs

Windows Server 2012以降のメンテナンスタスクはいろいろやっていますので、自国の整合をとるからかもしれませんが、再起動のタイミングを自分で制御したい場合は気を付けてください。

 (2/18追記)

次はWindows Updateを実行するPowerShellスクリプトを用意しようと思っていたのですが、調べたら山市さんがすでに書かれていたので(しかも私がやりたいこと全部やっている)、リンクして終わりにします(^^;。

山市良のえぬなんとかわーるど: Windows Scripting: Windows Update をスクリプトから ( WindowsUpdate.ps1 )