ntpdate は、リモート NTP ホストと一致するようにローカル システムの時刻を設定するために使用されます。 ntp コードのメンテナーは、ntpd が -q オプションで使用された場合に本質的に同じ機能を実行できるため、将来的には ntpdate を削除する予定です。 ntpdate コマンドは、ネットワーク上の timeserver マシンに接続して、現在のシステム時刻を設定します。システム時刻を設定するには root である必要があります。
# /usr/sbin/ntpdate timeserver.someplace.edu 7 Sep 21:01:25 ntpdate[2399]: step time server xx.xx.xx.xx offset 0.51 sec注意 :システムの日付を長期間にわたってタイムサーバーと同期させるには、代わりにデーモン ntpd を使用してください。
コマンド ライン オプション
オプション | 説明 |
---|---|
-b | このオプションを使用すると、現地時間からどれだけ離れていても、ゆっくりと調整される代わりにシステム時間が設定されます。 |
-d | このオプションは、デバッグ モードを有効にします。 ntpdate は一連の動作を実行し、デバッグ情報を出力しますが、実際にはローカル クロックを設定しません。 |
-p n | このオプションを使用して、各サーバーから取得するサンプル数 (n は 1 から 8) を指定します。デフォルトは 4 です。 |
-q | このオプションにより、ntpdate は、実際にクロックを設定せずに、コマンド ラインにリストされたサーバーを照会します。 |
-s | このオプションにより、ntpdate からのすべての出力が標準出力に出力されるのではなく、syslog を介してログに記録されます。 |
-tn | このオプションは、任意のサーバーからの応答のタイムアウトを n 秒に設定します。 |
-v | このオプションは、ntpdate をより冗長にします。 |
ntpdate コマンドの実行中に以下のエラーが発生した場合:
ntpdate: command not found
選択したディストリビューションに従って、以下に示すように ntpdate パッケージをインストールしてみてください。
分布 | コマンド |
---|---|
OS X | brew install ntpdate |
Debian | apt-get インストール ntpdate |
Ubuntu | apt-get インストール ntpdate |
Arch Linux | pacman -S ntpdate |
カリ Linux | apt-get インストール ntpdate |
CentOS | yum インストール ntpdate |
Fedora | dnf インストール ntpdate |
Raspbian | apt-get インストール ntpdate |
ntpdate コマンドの例
1. ローカル クロックを 2 つの Stratum 1 NTP サーバーと静かに同期します。
# ntpdate -s time.nist.gov time-b.nist.gov
2. 日付と時刻の同期と設定:
# ntpdate host
3. 時間を設定せずにホストに問い合わせます:
# ntpdate -q host
4. ファイアウォールが特権ポートをブロックしている場合は、非特権ポートを使用してください:
# ntpdate -u host
5. `slewed` の代わりに `settimeofday` を使用して時間のステップを強制します:
# ntpdate -b host
結論
ntpdate の問題は、ローカル時間の大きなずれを考慮せずにサーバー時間を中央時間と一致させることですが、NTP デーモン ntpd はサーバー時間を継続的に調整して参照クロックと一致させます。 ntpdate のマニュアル ページ (man ntpdate) に記載されているように、ntpdate を 1 日に複数回使用して、時間のずれを低く保ち、より正確な結果を得ることができますが、ntpd が提供する精度と信頼性には及びません。