私はDebianベースのシステムを同期するためにSNTPを使用しています。 SNTPには時計を設定する2つの方法があります。
-s, --settod Set (step) the time with settimeofday().
-j, --adjtime Set (slew) the time with adjtime().
変換方法は、検出されたオフセットがゼロになるまで小さなステップでローカルシステムクロックを調整します。ロールバックは、主に時間が逆方向の時計に誤って反応するプロセスを妨げないように実行されます。
今時計を設定するためのステップバイステップの方法です。
時間的にSNTPを完了するのにどのくらいかかりますか?
システムをポーリングし、変換がまだ進行中であるというフィードバックを提供する方法はありますか?
ベストアンサー1
今時計を設定するためのステップバイステップの方法です。 SNTPが変換を完了するのにどのくらいかかりますか?
私は経験がないSNTPソリューションなので、この点で本格的なNTPと変わらないと仮定されます。前者の場合は、ステッピングの場合は128ms、ロックおよび回転の場合は500ppm(496〜512ppm)という2つのターンキー制限を使用します。これは、最大許容オフセット128msが最大スルーレート512ppmで250秒(4.17分)以内に補償されることを意味します。ただし、実際には、目標時間に近づくにつれてスルーレートが計算された周期修正率まで徐々に減少するため、少し時間がかかることがあります。
システムをポーリングし、変換がまだ進行中であるというフィードバックを提供する方法はありますか?
ストックntptime
ユーティリティをお試しください。カーネルを直接照会し、ntpd
実行されていない場合でも機能します。もちろん、内部的にadjtime()
呼び出されると仮定しますntp_adjtime()
が、わかりません。