ntpdate4 コマンド

目的

Network Time Protocol (NTP) を使用して日時を設定します。

構文

ntpdate4 [ -4] [ -6] [ -a key] [ -B ] [-b ] [-d] [-e authdelay] [ -k keyfile] [ -o version] [ -p samples] [-q] [-s] [ -t timeout] [ -u ] [ -v ] server [...]

説明

ntpdate コマンドは、正確な時刻を決定するためにサーバー引数として指定された Network Time Protocol (NTP) サーバーをポーリングして、ローカルの日付と時刻を設定します。ntpdate コマンドは、ローカル・ホスト上で root として実行する必要があります。サンプルは指定されている各サーバーから取得され、最良のものを選択するために、クロック・フィルターおよび選択アルゴリズムのサブセットが適用されます。ntpdate コマンドの正確性および信頼性は、サーバーの数、このコマンドの実行ごとのポーリングの数、および実行間隔に応じて決まることに注意してください。

ntpdate コマンドは、ホスト・クロックを設定するために必要に応じて手動で実行できます。また、このコマンドは、ブート時にクロックを設定するためにホスト始動スクリプトから実行できます。これは、NTP デーモン ntpd を開始する前に初期段階でクロックを設定する場合に役立ちます。 ntpdate コマンドを cron スクリプトから実行することもできます。ただし、不自然な cronスクリプトを使用した ntpdate コマンドは NTP デーモンの代替にはならないことに留意することが重要です。NTP デーモンは、複雑なアルゴリズムを使用して、リソースの使用を最小限に抑えながら正確性および信頼性を最大化します。 最後に、ntpdate コマンドは、ntpd が行うようにはホスト・クロック周波数を調整しないため、ntpdate コマンドを使用した場合の正確性は限定されます。

時間調整は、2 つの方法のうちの 1 つを用いて ntpdate コマンドによって行われます。クロックが 0.5 秒を超えたエラー状態であると ntpdate コマンドが判断した場合は、settimeofday() システム・ルーチンを呼び出して時刻を単に一気に修正します。 エラー状態が 0.5 秒未満の場合は、adjtime () システム・ルーチンを呼び出して時刻を調整します。エラーが小さい場合は後者の手法の方が乱れが少なく、より正確であり、ntpdate コマンドが 1 時間または 2 時間ごとに cron スクリプトによって実行される場合は有効に働きます。

NTP サーバー・デーモン (ntpd) が同じホスト上で実行されている場合は、ntpdate コマンドは日付の設定を拒否します。 デーモンを実行する代わりに、cron スクリプトから定時ベースの ntpdate コマンドを実行するときは、1 時間または 2 時間ごとに行えば、十分正確に時を刻むことになるのでクロックが進むのを避けることができます。

注: ホスト名が必要とされる場合、ホスト名の前に付けられた修飾子 -4 は、IP バージョン 4 のネーム・スペースに対して DNS 解決を強制します。一方、修飾子 -6 は、IP バージョン 6 のネーム・スペースに対して DNS 解決を強制します。

フラグ

項目 説明
- 4 IP バージョン 4 のネーム・スペースに対してコマンド・ライン上の以下のホスト名の DNS 解決を強制します。
- 6 IP バージョン 6 のネーム・スペースに対してコマンド・ライン上の以下のホスト名の DNS 解決を強制します。
- a key 認証機能を使用可能にし、引数 keyntpdate として認証に使用されるキー識別子を指定します。 キーおよびキー識別子は、クライアントとサーバーの両方の鍵ファイルで一致しなければなりません。デフォルトでは、認証機能は使用不可にされます。
- B adjtime () システム・コールを使用して時刻を強制的に調整します (測定されたオフセットが + または - 128 ミリ秒を超えている場合でも)。デフォルトでは、オフセットが + または - 128 ミリ秒を超えている場合に、settimeofday () を使用して時刻を調整します。この場合、オフセットが + または - 128 ミリ秒を大幅に超えていれば、クロックを正しい値に調整するのに長い時間がかかる可能性があります。この時間の間にホストを使用してクライアントを同期化してはなりません。
- b adjtime () システム・コールを使用して調整 (デフォルト) するのではなく、settimeofday () システム・コールを使用して時刻を強制的に調整します。 ブート時にスタートアップ・ファイルから呼び出された場合にこのオプションを使用する必要があります。
- d デバッグ・モードを使用可能にします。このモードでは、ntpdate コマンドはすべてのステップを実行しますが、ローカル・クロックは調整しません。一般デバッグに有効な情報も出力されます。
- e authdelay 認証機能を実行するための処理遅延を、秒単位および 1 秒の何分の一の単位で値 authdelay として指定します (詳しくは、ntpd を参照してください)。この数値は通常、ほとんどの目的では無視できるほど十分に小さい値です。ただし、値を指定すると、非常に低速の CPU での計時が改善されることがあります。
- k keyfile 認証鍵ファイルのパスを文字列 keyfile として指定します。デフォルトは /etc/ntp.keys です。
- o version 出力パケットの NTP バージョンを整数バージョンとして指定します。これには 1 または 2 を指定できます。デフォルトは 3 です。これにより、ntpdate コマンドを古い NTP バージョンと併用することができます。
- p samples 整数サンプルとして各サーバーから獲得されるサンプルの数を指定します。1 から 8 までの値を使用します。 デフォルト値は 4 です。
- q 照会を指定します。クロックは設定しません。
- s 標準出力からのロギング出力を syslog システム・ファシリティーに転用します。これは、主として cron スクリプトの便宜を図って設計されています。
- t timeout サーバーの応答を待つ最大時間を、秒単位および 1 秒の何分の一の単位で値 timeout として指定します。この値は、0.2 秒の倍数に丸められます。デフォルトは 1 秒です。この値は LAN にまたがるポーリングに適しています。
- u ntpdate が非特権ポートまたは出力パケットを使用するように指示します。特権ポートへの着信トラフィックをブロックするファイアウォールの内側にいて、そのファイアウォールの外側のホストと同期化したいときにこのオプションを使用できます。 -d オプションは常に非特権ポートを使用することに注意してください。
- v 詳細出力。このオプションにより、ntpdate バージョン識別文字列がログに記録されます。

パラメーター

項目 説明
Server... ポーリングするサーバーを指定します。

終了状況

このコマンドは、以下の終了値を戻します。
項目 説明
0 正常終了。
>0 エラーが発生しました。

セキュリティー

項目 説明
アクセス制御 このコマンドを実行するには、root 権限を持っている必要があります。
イベントの監査 N/A

  1. アドレス 9.41.254.24 の NTP サーバーをポーリングしてローカルの日付と時刻を設定するには、 下記のように入力します。
    ntpdate 9.41.254.24
    下記のような出力が表示されます。
    address: ::
    address: 0.0.0.0
    25 Feb 12:19:41 ntpdate[434262]: adjust time server 9.41.254.24 offset -0.005270  sec

ファイル

項目 説明
/usr/sbin/ntp4/ntpdate4 NTP バージョン 4 の ntpdate コマンドが入っています。

/usr/sbin ディレクトリーから NTP バージョン 4 バイナリーへのデフォルト・シンボリック・リンク。

/usr/sbin/ntpdate --> /usr/sbin/ntp3/ntpdate
/etc/ntp.keys ntpdate コマンドで使用される暗号キー。