« 時間を指定して shutdown する方法 | メイン | vi の基本的な操作について »
2010年3月10日
NTP を slew モードで動かす方法
Solaris バンドルの NTP は step と slew の 2 つの同期モードをサポートしている。
■ step モード ... 一気に時間を同期し、時間が未来や過去になることがある。
■ slew モード ... ゆっくり時間をあわせ、時間が過去に戻ることはない。
デフォルトは参照先の NTP サーバとの時間のずれが 128 ms 以上場合
step で同期する。128 ms 以上の動作モードは選択が可能。
* 128 msec 未満の場合は常に slew で同期する。
step or slew slew only step or slew
---------------+---------0---------+--------------
-128ms +128ms
デフォルトの step 設定では 128 ms 以上のずれである場合一気に同期が取られるため、時間が "飛んだ" 状態が発生し、時間を参照するアプリケーションが誤作動する可能性がある。このような場合は動作モードを slew に設定することで回避が可能。
slew に変更するためには、事前に slew モードをサポートするパッチ適用が必要。設定は /etc/inet/ntp.conf に slewalways yes オプションを記載する。注意点として、Solaris 9 以下には 既知のバグ BugID:4532216 が存在しており、この対策のため disable pll オプションも合わせて設定が必要となっている。
* Solaris 10 で BugID:4532216 は修正されている。
/etc/inet/ntp.conf 作成または編集は、xntpd デーモンを再起動する。
■ slew モードに必要なパッチ
Solaris 8 109667-04
Solaris 9 パッチ不要
Solaris 10 パッチ不要
■ 設定方法
Solaris 9 以下
slewalways yes 時に disable pll も合わせて設定が必要
Solaris 10 以上
slewalways yes のみで動作可能。disable pll は不要
例)
Solaris 9 以下
/etc/inet/ntp.conf
------------------
server xx.xx.xx.xx
slewalways yes
disable pll
------------------
# /etc/init.d/xntpd stop
# /etc/init.d/xntpd start
Solaris 10 以上
/etc/inet/ntp.conf
------------------
server xx.xx.xx.xx
slewalways yes
------------------
# svcadm disable ntp
# svcadm enable ntp
投稿者 AJ : 2010年3月10日 20:10
トラックバック
このエントリーのトラックバックURL:
http://www.factory-aj.com/cgi/mtctrl/mt-tb.cgi/287