意外と誤解している人が多い「曜日」の話その知識、ホントに正しい? Windowsにまつわる都市伝説(136)

Windowsの毎月定例の更新日は「Patch Tuesday」ともいわれる「毎月第2火曜日」です。ただ、この火曜日というのは米国時間であって、時差の関係で日本ではその翌日の水曜日になるわけですが、第2水曜日と誤解している人がいまだに多いようです。そんな誤解と「タスクスケジューラ」につい最近まで存在した信じ難いバグが重なると……。

» 2019年05月28日 05時00分 公開
[山市良テクニカルライター]
「Windowsにまつわる都市伝説」のインデックス

Windowsにまつわる都市伝説

Patch Tuesdayの日、カレンダーを見れば一目瞭然

 「Patch Tuesday(パッチの火曜日)」は、Windowsや多くのMicrosoft製品に対してセキュリティ更新を含む「品質更新プログラム」が提供される、変わることのない固定スケジュールです。

 毎月、米国時間の「第2火曜日」がその日に当たります。第2水曜日と勘違いしている人、必ずしも第2水曜日ではなく、第3水曜日のときもあって、その違いがどこからくるのか知らない、あるいは気にも留めない人もいるかと思います。

 ちなみに、Patch Tuesdayは最近では「Bリリース」とも呼ばれており、Patch Tuesdayの翌週の「Cリリース」、またはさらに次の週の「Dリリース」としてオプションの品質更新プログラム(セキュリティ更新を含まない、翌月のBリリース向けのプレビュー)が提供されます。

 オプションの品質更新プログラムは「自動更新」や「Windows Server Update Services(WSUS)」の配布対象外であり、この更新が必要な場合、Windows 10では「更新プログラムのチェック」ボタンをクリックして検出させてインストールするか、「Microsoft Updateカタログ」からダウンロードしてインストールします。

 CリリースとDリリースのスケジュールは固定されておらず、曜日も決まっていません。2019年2月以降のWindows 10 バージョン1809がそうであるように(KB4482887、KB4490481)、次の月の第1週に流れることもあります。

 一方、Bリリースについては、固定のスケジュールがずれることはまずありません。筆者が記憶している限り、ここ数年では一度、2017年2月の定例更新が提供されなかったことがありましたが、それ以前もそれ以降もスケジュール通りに品質更新プログラムが提供されてきました。

 2019年の定例更新のスケジュールについては、Microsoftの日本のセキュリティチームブログでアナウンスされていますが、そのスケジュールは「毎月米国時間の第2火曜日固定」です。時差の関係で日本ではその翌日の水曜日になるということさえ知っていれば、こんなスケジュール表は不要でしょう。カレンダーを一目見れば分かることだからです(写真1)。

写真1 写真1 定例更新がいつなのか、カレンダーで第2火曜日の翌日を見ればすぐに分かる

 2019年5月1日の改元の関係で、日本のIT関係者は大変だったと思いますが、Windowsに対する新元号対応のための修正は、いつもの更新スケジュールの中で累積更新プログラムの一部として行われました。

 特別な対応があったとすれば、日本時間の2019年5月2日に最新のWindows 10 バージョン1809向けだけに定例外の累積更新プログラム(これまでの更新に和暦に関する修正のみを累積した「KB4501835」)の提供があったくらいです(結局、改元には間に合いませんでしたが)。

毎月(Monthly)タスクのスケジュール設定のよくある誤解、バグが誤解を増長?

 この「第×○曜日」という表現は、Windowsの「タスクスケジューラ(TaskSchd.msc)」の「毎月(Monthly)」タスクで指定可能なパラメーターです。定例更新が第2水曜日と誤解している人が多いように、タスクのスケジュール設定を誤解している人がいるかもしれません。

 タスクのトリガーとして「第×○曜日」の実行スケジュールを設定した人なら、少なくとも設定した時点で誤解することはないと思います。「第×」「○曜日」と設定すれば、その月の「×回目の○曜日」(×が「最終」なら「最後の○曜日」)という解釈以外はできないと思うからです(画面1)。

画面1 画面1 「毎月第2火曜日」にタスクを自動実行するスケジュール設定。誤解の余地はないように見える

 また、「タスクスケジューラ」ではなく、「Schtasks.exe」コマンドでタスクを作成、表示する場合は、このような誤解はないはずです。タスク作成時(schtasks /create)に第2火曜日を指定するには「/SC MONTHLY /MO SECOND /D TUE」のようにします。タスクの詳細情報を照会すると(例:schtasks /query /TN "タスク名" /V /FO LIST)、「日:第2 TUE、月:毎月」のように表示されます。タスクのトリガーに「第×週」という指定はそもそも存在しません。

 問題は、作成されたタスクの「タスクスケジューラ」上での“トリガーの見え方”です。例えば、毎月第2火曜日にメッセージを表示するタスクを作成したとしましょう。

 「タスクスケジューラ」上でのタスクの「トリガー」列、あるいはタスクの「トリガー」タブの「詳細列」には、「月:1月、2月、……週:第2、日:火曜日に起動、……」のように表示されます(画面2)。この表示だと毎月の「第2火曜日」ではなく、「第2週の火曜日」と誤解する人がいても無理はありません。両者が一致する月もあれば、一致しない月もあります。そのため、タスクが期待したスケジュール通りに実行されないと勘違いしてしまうかもしれません。

画面2 画面2 「タスクスケジューラ」に表示される「週:第2、日:火曜日に起動」は、「第2火曜日」ではなく「第2週の火曜日」と誤解されるかもしれない。「Schtasks.exe」コマンドなら誤解の余地はない

 英語版の「Task Scheduler」の場合、「Triggers」列や「Details」列の表示は「Run on the Second Tuesday, each January, February,……」となっています。そのため、日本語版の「タスクスケジューラ」のような誤解は生じないでしょう(画面3)。

画面3 画面3 英語環境(en-us)の場合、「Task Scheduler」には「Run on the Second Tuesday」のように全く誤解する余地のない表現で表示される

 これに全く別の問題が原因で、タスクが実行されるはずの日に実行されなかったりすると、2回目なのか第2週なのか、訳が分からなくなるかもしれません。例えば、つい最近まで、Windows 10 バージョン1511〜1803とWindows Server 2016には、以下のブログで説明されている信じられないバグが存在しました。

 このバグとは、実行日が「7の倍数」のとき、タスクが実行されなかったり、1週間前に実行されたりするというものです。このバグは、2018年9月(バージョン1607)、10月(バージョン1709)、11月(バージョン1803)のBリリースの品質更新プログラム(および前月のC/Dリリース)でようやく修正されました(バージョン1511と1703については修正予定なし)。運悪くこのバグに遭遇してしまった人は、もう何が何だか分からなくなってしまったのではないでしょうか。ところで、このブログのタイトルの「第N週」も誤解を招く不適切な表現だと思います。

 今回の記事のために作成したタスクは、「毎月第2火曜日の午前9時(9:00)」に、「明日は毎月恒例のWindows Updateの日(第2火曜日の翌日)」というメッセージを表示するものです(画面4)。

画面4 画面4 毎月第2火曜日に翌日のWindows Updateをお知らせするタスク。翌日に表示させたい場合は、トリガーに「1日間」の遅延時間を追加すればよいだろう(動作は未確認)

 第2火曜日の翌日に「今日は……」と表示するようにしたければ、第2火曜日のトリガーに加えて、「1日間」の遅延時間を設定すればよいでしょう。遅延時間の設定が期待通りに機能するかどうかは確認していませんが、少なくとも「第2水曜日」や「第3水曜日」で指定するのでは、その日にメッセージを表示するという目的は達成できません。

 なお、タスクを作成する際には必ず「プログラムの開始」で操作を指定してください。「電子メールの送信(非推奨)」や「メッセージの表示(非推奨)」は、Windows 8およびWindows Server 2008以降では廃止され、使用できません。なぜ使えない機能が残っているのかについては、本連載第9回をご覧ください。電子メールの送信やメッセージの表示に使用できる、代替の方法についても説明しています。

筆者紹介

山市 良(やまいち りょう)

岩手県花巻市在住。Microsoft MVP:Cloud and Datacenter Management(2018/7/1)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『ITプロフェッショナル向けWindowsトラブル解決 コマンド&テクニック集』(日経BP社)。


Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

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

メールマガジン登録

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