この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Windows Admin Centerで使われている“目からうろこ”の再起動テク
以下の連載記事では、「Windows Admin Center」の「Get-NumberOfLoggedOnUsers」ファンクションが、ある条件下で正しい結果を返さないというバグを指摘し、それを修正して、期待通りに動作する「Get-NumberOfLoggedOnUsers」ファンクションを作りました(注:Windows Admin Centerのバグを修正するものではありません)。日常的な自動化された運用管理タスクの中で、WindowsやWindows Serverにログオン中のユーザーがいないかどうかを確認するのに活用できると思ったからです。
今回は、Windows Admin Centerの「更新プログラム」ツールが備える、更新プログラムのインストール後の「再起動スケジューリング」を取り上げます。この機能にバグがあるわけではありません。どのように実装されているのか興味があったからです。
「更新プログラム」ツールの特徴は、個々の更新プログラムのインストールの要否を選択できること、そして再起動を要求する更新プログラムをインストールする際、再起動の開始日時をスケジューリングできることです(画面1)。
更新プログラムの確認とダウンロード、インストールには「Windows Update Agent(WUA)API」を利用します。MicrosoftはWSH(Windows Script Host)で動く、WUA API対応の便利なサンプルスクリプト「WUA_SearchDownloadInstall.vbs /Automate」を公開しているので、Windows Admin Centerのこの部分と同様のことをスクリプトで自動実行するのは比較的簡単です。
では、再起動のスケジューリングはどのように実現されているのでしょうか。再起動をスケジューリングした後に、対象サーバの「タスクスケジューラ」を確認してみましたが、タスクとしてはスケジューリングされていませんでした。
しかし、スケジューリングした日時の10分前に、ログオン中のユーザーのデスクトップに突然表示された「サインアウトしようとしています。Windowsを10分後にシャットダウンします。」のメッセージダイアログボックスを見て、これが「shutdown.exe」コマンドでスケジューリングされたものであると気が付きました。
Windows Admin Centerには、各ツールの個々の機能を実装しているPowerShellスクリプトを表示する機能があります。「更新プログラム」ツールの更新プログラムのインストール開始や再起動のスケジューリングは、「Install-WindowsUpdates」ファンクションに実装されていました。
その実装方法は至ってシンプルでした。現在の日時から再起動をスケジューリングした日時までの秒数を計算し、再起動が必要な更新プログラムのインストール後に「shutdown.exe -r -t <秒数>」を実行しているのです(画面2)。
このアイデアは思い付きませんでした。タスクへの登録ではないので、スケジューリングされた日時より前に再起動してしまっても、タスクが残るようなことはありません。スクリプトによるWindows Updateの自動化と組み合わせるなど、さまざまな管理操作に応用できそうです。
指定した日時に再起動を開始するPowerShellスクリプト
筆者はプログラマーではないので、コードが冗長的なのはご勘弁いただくとして、2つのPowerShellスクリプトを作成しました。
関連記事
- Windows 10 バージョン1909以降の機能更新プログラム、これに注意しないと「ハマる」
ここ数カ月、Windows 10の機能更新プログラムおよびISOメディアを使用したバージョンアップグレードに関して、特定の条件下で発生する既知の問題が明らかになっています。企業のクライアントPCのバージョンアップグレードを今計画している場合は、影響を受けないように注意してください。 - 2021年にサポートが終了するMicrosoft製品まとめ
前回(第90回)は、Windows 10とMicrosoft Office製品について、2021年以降のサポートライフサイクルを再確認しました。今回は視点を変えて、2021年内にサポートが終了するMicrosoftの製品/技術についてまとめます。 - 【速報】Windows 10 October 2020 Update(バージョン20H2)が正式リリースに
Windows 10の最新バージョン「Windows 10 October 2020 Update(バージョン20H2)」が正式にリリースされました。Windows Updateを通じて段階的にロールアウトされるため、全てのPCで利用可能になっているわけではありません。案内が来るのを気長にお待ちください。 - Windows 10におけるレガシーSMBプロトコルに関する重要な変更とSMB v3新機能まとめ
Windows 10およびWindows Server 2016以降、レガシーなSMB(SMB v1やSMB v2)の扱いについて、既定の動作に幾つか重要な変更が行われています。Windows 10やWindows Server 2016以降への移行時、または機能更新プログラムによる新バージョンへのアップグレードのタイミングで、以前のWindowsネットワークになかった挙動に遭遇した場合は、変更点を確認してみてください。
Copyright © ITmedia, Inc. All Rights Reserved.
からの記事と詳細 ( Windows Admin Centerから拝借する「再起動スケジューリング」のマル秘テク - ITmedia )
https://ift.tt/3zKwwM4
No comments:
Post a Comment