web-dev-qa-db-ja.com

Windows Server 2008 R2のシステム時刻が過去4時間にランダムにリセットされる

過去4時間にランダムに時間がジャンプするという問題があります。その結果、スケジュールされたタスク(バックアップなど)が正しい時間に発生せず、使用している一部のタイムクリティカルなアプリケーション(会計システムなど)が機能しません。

たとえば、実際の時間が4 PM ESTである場合、システムクロックは12 PMを読み取ります。システムクロックを正しい時刻に再度リセットすると、ランダムに4時間前に戻ります。 。

  • OS:Windows Server 2008 R2 Standard SP1
  • このサーバーはVM上になく、ドメインに参加していません。
  • 私たちのタイムゾーンはESTです。
  • WindowsはESTタイムゾーンに設定されています。
  • BIOSクロックはUTCです。
  • 参考までに、ESTはUTCから-4時間です。
  • デバッグの目的で、Windowsタイムサービスと、システム時刻を変更すると考えられる他のサービスを無効にしました。

イベントビューアを確認したところ、時間の変更に関連するいくつかの「カーネル全般」イベントが表示されました。次に例を示します。

<?xml version="1.0" encoding="UTF-8"?>
<Event xmlns="http://schemas.Microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Microsoft-Windows-Kernel-General" Guid="{A68CA8B7-004F-D7B6-A698-07E2DE0F1F5D}" />
    <EventID>1</EventID>
    <Version>0</Version>
    <Level>4</Level>
    <Task>0</Task>
    <Opcode>0</Opcode>
    <Keywords>0x8000000000000010</Keywords>
    <TimeCreated SystemTime="2014-05-09T17:04:34.500000000Z" />
    <EventRecordID>39254</EventRecordID>
    <Correlation />
    <Execution ProcessID="4" ThreadID="68" />
    <Channel>System</Channel>
    <Computer>SERVER</Computer>
    <Security UserID="S-1-5-18" />
  </System>
  <EventData>
    <Data Name="NewTime">2014-05-09T17:04:34.500000000Z</Data>
    <Data Name="OldTime">2014-05-09T21:05:19.806811800Z</Data>
  </EventData>
</Event>

このイベントは、午後5時頃に生成されました。このイベントの後、システム時刻は午後1時を示していて、現在時刻からちょうど4時間遅れています。

Windows Time Serviceをインストールして実行し、External Time Sync用に構成しても問題は解決しません。インターネット時刻同期により時刻が正しく設定され、時刻がランダムにリセットされます。

この問題は、コンピュータを再起動するたびにも確実に発生します。

この問題について聞いたことがある人、または解決策を知っている人はいますか?

5
dssvo

デフォルトでは、WindowsはBIOSクロックが現地時間に設定されていることを想定していますが、UTCではありません。これは、Linuxやその友人たちの場合には当てはまりません。 (これは、デュアルブートシステムでの楽しみにつながります。)

最近のWindows レジストリ設定の追加 BIOSクロックをUTCに設定できるようになりました。ただし、この設定は正式にはサポートされておらず、問題が発生することがわかっています。 http://blogs.technet.com/b/askds/archive/2012/03/09/unsensitive-servers-due-to-dst-and-an-unsupported-registry-key.aspx

純粋に技術的な観点から見ると、BIOSクロックをUTCに保つ方が「優れています」。ただし、WindowsにはBIOSクロックが現地時間であると想定している歴史的な手荷物がたくさんあるため、特別な理由がない限り、その設定をいじってはいけません。

したがって、私の推奨事項は、BIOSクロックをローカルタイムゾーンに設定し、タイムゾーンがWindowsで正しく設定されていることを確認し、Windowsタイムサービスが外部NTPソースを使用するように構成されていることを確認することです。 (ドメインにいないので、コマンドラインからw32tmを使用してください)。

1
myron-semack