読者です 読者をやめる 読者になる 読者になる

あれのーと

らくがきちょうです。

うるう秒

linux

個人利用の皆様はあまり関係ないですが、うるう秒に関するポイントのメモ
うるう秒のざっくりとした説明は、このあたりでばっちり。

1.tzdataのバージョン。2005年以降のバージョンであれば問題ないはず。*1
http://h50221.www5.hp.com/cgi/service/knavi/production/doc_disp.cgi?category=1101&doc=jnav015322
2.ntpdのバグ
以下の条件をすべて満たしていると、うるう秒を契機にしてntpdのバグによって上位のNTPサーバとの同期外れが発生する場合がある。この場合はntpdを上げれば良い。
http://www.jp.redhat.com/support/errata/RHBA/RHBA-2007-0189J.html

  • ntpdのバージョンが4.2.0.a.20040617-6以前
  • ntpdをslewモード(-x)で起動している
  • 上位のNTPサーバと比較して0.5秒以上のオフセットが出ている

3.時刻戻り
1台の同期先とNTPで同期している場合、うるう秒を越えた際に時刻戻りが起きて論理矛盾が発生するかも。
3台以上との同期を行っているか、slewモードであれば問題ないはず。

4.「60」秒問題
Linuxのtzdataはうるう秒を「60」で表現します。

23:59:59
23:59:60<=ここ
00:00:00

Solarisなどの場合は23:59:59からじわじわ1秒をずらす(これはslewに似ているがハード側で対処している)ので
つぎは00:00:00となるので問題になりません。
この「60」となるタイミングにAPやミドル側でタイムスタンプを打たれたり、このタイムスタンプを使った評価処理などが行われる場合は、影響が無いか調べておくべきでしょう。

*1:2006年のうるう秒をこえているので