System Center Configuration Manager(SCCM)を使っている環境で,新規VMをデプロイした際などに,Software CenterからすぐにWindows Updateを当てたいと思う場合があります。
しかし,一日ほど待たなければ,Software Centerにアップデートが現れないことがあるので,何とかして,強制的にアップデートを取得する方法がないか,気になるところです。
そのようなときには,コントロールパネルのConfiguration Managerから,Machine Policy Retrieval & Evaluation Cycleを探し,Run Nowボタンをクリックしましょう。
そうすると,下記のようなポップアップが現れます。
The selected cycle will run and might take several minutes to finish.
「完了するまでには数分かかりますよ」というメッセージが現れましたので,これで,ほどなくしてアップデートが来るかと思いきや,一向に変化が現れません。
何とかして強制的に,アップデートを取得する方法はないのでしょうか。
Run Nowボタンを押したときに実際に何が起こっているのか
The selected cycle will run and might take several minutes to refresh.というメッセージは,実際どういう意味なのでしょうか。
実は,このジョブサイクルは,いつも直ちに実行されるわけではありません。そして,バックグラウンドで,低いプライオリティで実行されます。ですので,他のジョブが走っているときなど,コンピューターが忙しいときには,このSoftware Center関連のジョブが一向に走らないのです。
そもそも,このConfiguration Managerは,通常のシステムオペレーションを妨害しないように慎重に作られています。その結果,内部ロジックで,システムの使用率を見て,ビジーだと判断する限りは,ジョブを実行させません。
何度,Run Nowボタンを押しても,結果は同じなのです。
この場合,次のCcmExecのログに,以下のようなメッセージが記録されるかもしれません。
Skip sending state message due to same state message already exists.
マシンの状態に変化がない限りは,SCCMサーバーに対して,新たな要求を送らないようです。
ですので,Run Nowボタンを何度押しても,サーバーに対して有効な要求は送られません。
では,強制的にRun Nowする方法はないのか
答えは,「ない」です。Configuration ManagerやSoftware Centerには,強制的にSCCMサーバーに対して要求を送る機能がそもそも備わっていません。
これは,SCCMサーバー側の付加を,極端に増大させないためにも,必要な措置だといえます。SCCMサーバーは,数千台~数万台のクライアントを管理することがあるわけですから,それも納得です。
サードパーティ製のツールなどはないのか
以下のサイトで紹介されいてるツールを使えば,通常のConfiguration ManagerやSoftware Centerに含まれていない機能が提供されているようです。
とはいえ,サードパーティ製のツールを入れてまで行うようなことでもないので,一日程度待つ方が得策のようにも思います。
リソースを拡張しよう
最も効果的だと思うのは,初期セットアップ時点では,VMに割り当てるCPUやメモリのリソースを増やしておくことだと思います。
そうしておくと,マシンがビジー状態になることをいくらか避けられるので,比較的早い段階で,アップデートを取得してくることができるかもしれません。
いずれにしても,Windowsアップデートなどを当てきるためには,一日程度かかるものと思っていた方がよさそうです。
悩んでおられる方のご参考になればと思います。
他に,有効な方法をご存知の方がおられれば,ぜひコメント欄で教えてください。
コメント