スポンサーリンク

NTPDATE(8) FreeBSD システム管理者マニュアル NTPDATE(8)

名称

ntpdate − NTP を介して日付と時刻を設定する

書式

ntpdate [−bBdoqsuv] [−a key] [−e authdelay] [−k keyfile] [−o version] [−p samples] [−t timeout] server ...

解説

注意: このプログラムの機能は、今では ntpd(8) プログラムの中で利用可能と なっています。 ntpd(8) マニュアルページの −q コマンドラインオプションの説 明を参照して下さい。適切な期間、喪に服した後で、 ntpdate ユーティリティは 本ディストリビューションから引退することになります。

ntpdate ユーティリティは、正確な時刻を決めるために server 引数で与えられ たネットワークタイムプロトコル (Network Time Protocol; NTP) サーバ (複数 可) を調べることによって、ローカルな日付と時刻を設定します。このコマンド は、ローカルホストの root として起動されなければなりません。指定された各 サーバからたくさんのサンプルを得て、 NTP 時計フィルタのサブセットと選択ア ルゴリズムを適用し、その中から最良のものを選択します。 ntpdate の正確さと 信頼性はサーバの数、一実行あたりの調査数、そして実行間隔で決まることに注 意してください。

以下のオプションが使用可能です:

       −a key

認証機能を有効にし、認証の鍵識別子を key 引数に指定します。鍵と鍵 の識別子はクライアントとサーバ双方の鍵ファイルで合致する必要があ ります。デフォルトでは認証機能は無効になっています。

−B
計測されたオフセットが ±128 ms より大きくても、時刻を常に adjtime(2) システムコールを用いて微調整するよう、強制します。デ フォルトではオフセットが ±128 ms より大きい場合は、 settimeofday(2) を用いてずらします。オフセットが ±128 ms より大き い場合は、時計を正しい値に微調整で合わせるのに長い時間 (数時間) 掛かることがあることに注意してください。この間は、クライアントを 同期するためにこのホストを使ってはいけません。

−b
(デフォルトの) adjtime(2) システムコールを用いて時刻を微調整する のではなく、 settimeofday(2) システムコールを用いて時刻を合わせる よう、強制します。このオプションはブート時に起動ファイルから呼び 出すときには使用するべきです。

−d
デバッグモードを有効にします。 ntpdate は全てのステップを実行しま すが、ローカル時計を合わせることはしません。一般的なデバッグに役 立つ情報も表示します。

−e authdelay
認証機能の処理にかかる遅れを authdelay に値を秒数 (小数も可) で指 定します (詳細は ntpd(8) を参照してください)。この値は通常多くの 用途では無視し得るほどわずかですが、非常に遅い CPU ではこの数を指 定することで、時間の正確さが改善されるかもしれません。

−k keyfile
認証鍵のファイルへのパスを文字列で keyfile に指定します。デフォル トは /etc/ntp.keys です。このファイルは ntpd(8) に記述されている 形式で書く必要があります。

−o version
外へ出すパケットの NTP バージョンを version に 1 か 2 の整数で指 定します。デフォルトは 3 です。このオプションは ntpdate を古い バージョンの NTP に対して使用できるようにします。

−p samples
各サーバから得るサンプルの数を samples に 1 から 8 までの整数で指 定します。デフォルトは 4 です。

−q
問い合わせをするだけで、時計を設定しません。

−s
(デフォルトの) 標準出力ではなく、 syslog(3) 機能を使用してログ出 力を行ないます。この機能は主に cron(8) スクリプトでの利便性を考え て作られました。

−t timeout
サーバの応答を待つ最大時間を timeout に秒数 (小数も可) で指定しま す。値は 0.2 秒の倍数に丸められます。デフォルトは 1 秒で、これは LAN を通じて調べるのに適当な値です。

−u
ntpdate
が外へ出すパケットを非特権ポートから出すように命令しま す。この機能は、外から来た特権ポートへのトラフィックをブロックす るファイアウォールの内側にいる場合に、ファイアウォールを越えた向 こうのホストと同期する際に最も便利です。 −d オプションは常に非特 権ポートを使用することに注意してください。

−v
冗長になります。このオプションは ntpdate のバージョン識別文字列を 記録するようになります。

ntpdate ユーティリティは、必要に応じてホストの時計を合わせるために手動で 動かしたり、ブート時に時計を設定するために起動スクリプトの中から動かすこ とができます。このことは NTP デーモン ntpd(8) を起動する前に時計を初期設 定する場合に便利です。 ntpdatecron(8) スクリプトから起動することも可 能です。しかし、 ntpdate を用いた cron(8) スクリプトを工夫しても、最小限 のリソース消費で最大の正確さと信頼性を得る洗練されたアルゴリズムを用いる NTP デーモンの代わりにはならないことに注意することが重要です。最後に、 ntpdatentpd(8) がするようなホストのクロック周波数の学習をしないので、 ntpdate を用いることによる正確さは限定されます。

ntpdate は 2 つの方法のうちの 1 つで時刻の調整を行います。 ntpdate は、時 計が 0.5 秒以上ずれていると判断すると、システムの settimeofday(2) ルーチ ンを呼ぶことで単に時刻を合わせ直します。しかし、誤差が 0.5 秒以内のとき は、システムの adjtime(2) ルーチンを呼ぶことで、時刻を微調整します。後者 のテクニックは、誤差が小さいときには、より滑らかな上に正確であり、 ntpdatecron(8) で 1 〜 2 時間に一回動かすときには、かなりうまく働きま す。

ntpdate ユーティリティは同じホストで NTP サーバデーモン (例えば ntpd(8)) が動いている場合は、日付の設定を拒否します。デーモンを実行する代わりに cron(8) から定期的に ntpdate を呼び出す場合は、 1 〜 2 時間に一回行なうと 時計のずれを抑止するのに十分な正確な時刻を保持できます。

ntpdate が NetInfo サポートを含む形でコンパイルされていた場合、 ntpdatentpd(8) 用の NetInfo の設定から時刻サーバを見つけられる場合は server 引数はオプションとなります。

関連ファイル

       /etc/ntp.keys

ntpdate で使われる暗号化鍵を含みます。

関連項目

ntpd(8)

バグ

微調整による調整は、実際には、計測されたずれよりも 50% 大きくなります。こ れは、ひどくフラフラする時計をより正確に保持するのに役立つからです (と主 張されています)。このことは良い考えではないかもしれず、カーネル変数 kern.clockrate.tickkern.clockrate.tickadj の値をおかしくするかもしれ ません。

FreeBSD 10.0 January 6, 2000 FreeBSD 10.0

スポンサーリンク