Windows Server 2008までは「Windows Time」サービスはスタートアップの種類が「自動」に設定しており、サーバー起動時に「Windows Time」サービスが自動起動し、状態が「開始」となっていました。
しかし、Windows Server 2008 R2となり、このデフォルト設定が変わりました。
レジュメ
Windows Timeが自動起動になっているのに状態が開始にならない。Windows Server 2008 R2以降
環境・前提条件
- Windows Server 2008 R2
- Windows server 2012
- Windows server 2012 R2
Windows Server 2008 R2から「Windows Time」サービスの実行が変わりました。
-
Window Server 2008の時の「Windows Time」サービス状態
Windows Time サービスは、デフォルト設定で
- スタートアップの種類、「自動」
- 状態、「開始」
となっていました。
Windows Server 2008 R2以降の「Windows Time」サービスについて
例えば、Windows Server 2012 R2では以下のようになっています
(以下、Windows Server 2008 R2以降は同じ形となっています)
Windows Timeサービスのスタートアップ状態を「自動」に変更した場合
Windows Serve 2008 R2で試しましたが、
Windows time サービスのスタートアップ状態を「自動」に変更し、Windows OSを再起動したところ、Windows Timeサービスは自動的に「開始」されませんでした。
Windows Server 2008の時は、自動的に開始されたのに・・・
Windows Timeサービスのスタートアップ状態を「自動」に変更しても自動開始されないのは仕様
Windows 7 および Windows Server 2008 R2 のスタンドアロン環境で Windows Time サービスが自動的に起動しない
実は、Windows Time サービスを自動起動にしても開始されないのは、マイクロソフトの仕様です。
(これを意識しなければならないのはワークグループ環境についてです)
実際これはこれで問題は無いのですが、どうしてもOS起動時にWindows Timeサービス自動起動させたい場合は、上記URLに方法が記載されています。
- 方法 1 :既定で登録されたトリガー イベントを削除し、Windows Time サービスのスタートアップの種類を [手動] から [自動] に変更します。
- 方法 2 :環境に適したトリガー イベントを定義します。
- 方法 3 :Windows Time サービスのスタートアップの種類を [手動] から [自動 (遅延開始)] に変更します。
要するにWindows Timeサービスを起動させる「トリガーイベント」があるから、サービスが自動起動させないようです。
ここが「スタートアップの種類が手動でも問題無い」という理由です。
手動トリガー開始とは?Windows Timeサービス。手動でも起動する
Windows Server 2012 R2のWindows time サービスのスタートアップの種類に「手動(トリガー開始)」とあります。
(Windows Server 2008 R2でも、「手動」になっていますがトリガーで開始されます)
「手動(トリガー開始)」の正体は、タスクスケジューラーです。
Windows server 2008 R2の場合、毎週日曜1時に起動
タスクスケジューラ―の
「タスクスケジューラ―ライブラリ」-「Microsoft」-「Windows」-「Time Synchronization」を開きますと、「SynchronizeTime」タスクが定義されていて、毎週日曜の午前1時に
%windir%\system32\sc.exe start w32time task_started
が実行されるようになっています。
上記コマンドは、要するに「Windows Timeサービスを開始する(start)」というコマンドで、このタスクで手動だった「Windows Time」サービスが「開始」され時刻同期し「停止」されています。
スケジュールで実行される時と手動でタスクを実行する時で動作が異なるのが、不思議でけど。
これがトリガー開始です。
この場合は、「インターネット時刻」では「設定されているスケジュールに従って自動的に同期するように設定されています」
という表示になります。
(「windows time」サービスが起動している場合は、「インターネット時刻」に次回の同期時刻が書かれています。)
- タスクの「SynchronizeTime」で毎週日曜1時に時刻同期
- 「Windows Time」サービスのポリシー間隔によって時刻同期
のどちらかで時刻同期されるということですね。
Windows Serve 2012以降の開始スケジュールは?
Windows Server 2012とWindows Server 2012 R2では、決まったスケジュールでタスクが起動しないようですが、何かをトリガーとし定期的にこの「SynchronizeTime」タスクが実行され「Windows Time」サービスが開始されています。
まあ、デフォルト設定でもちゃんと時刻同期出来る仕組みになっているわけです。
無理に時刻同期の設定を変更する必要もないのではないでしょうか