NTPが自分のシステムクロックを更新するのをどのように停止しますか?

NTPが自分のシステムクロックを更新するのをどのように停止しますか?

私は、ユーザーが調整または変更できる内部RTCクロックを備えたDebian Jessie Linuxシステムを持っています。外部IPに接続されている場合と接続されていない可能性があるため、NTPにアクセスすることもそうでない場合もあります。可能であれば、時計設定UIに「NTPで設定」オプションを提供したいのですが、システム時計をNTPで継続的に更新したくありません。

  • ntpdを有効にしてシステムクロックを更新しないように設定するにはどうすればよいですか?
  • 「ntp time」(システムクロックで表示)を読み、表示するには? (CまたはPython)

答え1

NTPがシステムクロックを更新するのを防ぐ最も簡単な解決策は、これを実行しないことです。

代わりに、ntpdateオンデマンドなどの機能を使用して、潜在的なリモートNTPサーバーにローカルクロックがどれだけ間違っているかを尋ねます。

ntpdate -qu 0.pool.ntp.org 1.pool.ntp.org 2.pool.ntp.org

server 212.47.239.163, stratum 2, offset 0.000638, delay 0.03052
server 92.243.6.5, stratum 3, offset -0.001490, delay 0.03011
...
 4 Oct 00:00:55 ntpdate[10962]: adjust time server 91.121.167.54 offset -0.000156 sec

このモードではntpdaterootとして実行する必要もないため、ローカルクロックが「誤って」更新されないようにすることができます。

ntpdところで、アップストリームタイムサーバーとの接続切断を処理でき、デーモンを長時間実行すると、ほとんどのシステムクロックに固有のドリフトを最小限に抑えることができることをご存知ですか?

関連情報