Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ ntpdate(8) — NEWS-os 4.2.1R

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

xntpd(8)

NTPDATE(8)  —  NEWS-OS Programmer’s Manual

名称

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

形式

ntpdate [ −bdos ] [ −a key# ] [ −e authdelay ] [ −k keyfile ] [ −p samples ] [ −t timeout ] server ... 

解説

ntpdate は、正確な時間を決定するため引数として与えられた ホスト (複数可) 上の ネットワークタイムプロトコルサーバ (複数可) を ポーリングすることで、 ローカルの日付と時間を設定します。 これは、ローカルホストをルートとして実行しなければなりません。 指定された各サーバの中から相当数のサンプルが得られ、 標準 NTP クロックフィルタと選択アルゴリズムがこの中から 最善のものを選ぶのに適用されます。 通例通り、 ntpdate を /etc/rc.local 起動スクリプトに挿入すれば、 ブートタイムでの時刻の設定ができ、および、または cron(8) を介しての時間から時間への実行も 可能です。 ただし、サーバの数が多くなるほど ntpdate の信頼性、精度は格段に良いものとなることに注意して下さい。 単一のサーバだけを使うこともできますが、 それ以上なければ最低 3 つ 4 つのサーバを使えば 性能はより良いものとなり、 またサーバの 1 つに異常が起っても抵抗はより強いものとなります。

時間調整には 2 つの方法があり、そのどちらかを ntpdate が行います。 ユーザのクロックが 0.5 秒以上ずれていると ntpdate が判断した場合、 settimeofday(2) を呼び出して簡単に時間を進めます。 エラーが 0.5 秒以下の場合、デフォルトで、 adjtime(2) をオフセットを指定して呼び出し、クロックの時間を動かします。 後者の操作方法の方が、 オフセットが小さければ破壊の危険性はより小さく、 より正確で、 ntpdate が、1 時間あるいは 2 時間毎に cron(8) で実行されているような場合に、うまく動作します。 後者で行われる調整は、算出されたオフセットよりも 実際は 50% 大きくなりますが、 これはひどい浮標クロックをより正確なものにしようとするためです (この矛盾は、普通、有益なものですが、やや安定度を犠牲にします)。 ただしブート時においては、 時間は常に進んでいたほうが望ましいものです。 コマンド行で −b スイッチを指定すると、 どんな場合でもこれを強制することができます。 −s スイッチは、標準出力ではなく、 syslog(3) 機構を介して ntpdate にその動作をログするように指示するもので、 cron(8) からのプログラムを実行している時に 役立つオプションです。

−d フラグは ntpdate が実際に行われずに実行するものを決定する際に使用できます。 一般的なデバックに有効な ntpdate は<その出力パケット内で NTP バージョン 2 の実現を要求します。 古いソフトウェアの中にはバージョン 2 の 照会に応答を拒否するものがあるかも知れませんが、 その時には、 −o スイッチを使って、代りにバージョン 1 の実現として プログラムに強制できます。

各サーバから得られたサンプル

ntpdate の番号は −p のスイッチを使って、1 から 8 までの間に設定することができます。 応答待ちに費やされる時間は −t スイッチを使って設定できますが、 0.2 秒の倍数に丸められることになります。 デフォルトは 1 秒で、LAN を通じてポーリングするのに適した値です。

必要があれば、 ntpdate は、そのトランザクションを鑑定します。 −a スイッチが鑑定しなければならないことを、指定します。 −k スイッチは、 キーを読み、指示されたキー番号を使って、 全てのパケットを出す事のできるファイル名を /etc/ntp.keys のデフォルトから変更できるようにします。 このファイルは xntpd(8) で解説されている形式でなければなりません。 −e オプションは、秒単位で遅延を処理する鑑定の仕様を可能にします (詳細は xntpd(8) を参照)。 値を指定した場合、 非常に遅い CPU のクロック上での計時を改善できますが、 普通この数は、 ntpdate の目的からすれば、無視できるほど小さいものです。

ntpdate は、NTP サーバのデーモンが(例: xntpd(8)) 同一ホスト上で動作していれば、日付の設定は拒否します。 デーモン実行の代りとして、 ntpdate を cron(8) から正規の操作で実行する際は、 1 時間または 2 時間に 1 度、 これを実行すればクロックが進むのを回避できるだけの 正確な計時が可能になります。

関連ファイル

/etc/ntp.keys   ntpdate が使用する暗号化キーが含まれます。

関連事項

xntpd(8)

歴史

トロント大学 デニス ファーガソン著

バグ

クロック発振器のエラーを補正することによって正確度を 改善するのに使用する方法で処理しますが、 より良い方法としては、 プログラムに前の実行からの状態を保存しておくことです。

NEWS-OSRelease 4.2.1R

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026