ntpq
envia o deslocamento em milissegundos. ntpdate
offset está em segundos. Seu deslocamento é, portanto, 209.956 ms
vs. 0.207451 sec
, o que é muito próximo (209ms vs. 207ms)
Às vezes sou notificado pelo nosso sistema de monitoramento sobre compensações muito altas ntpd. Ao emitir ntpdate, ele não mostra nenhum. Como o ntpd ajusta o tempo lentamente, parece "pensar" que existe um deslocamento que precisa ser adaptado. Mas não deve mostrar esse deslocamento, também? O que eu estou entendendo mal?
Isso aconteceu depois que um servidor NTP não estava disponível e aparentemente reiniciado, o offset quando voltou era de quase 20 segundos e o NTP ajustado lentamente, então basicamente ele fez o que foi projetado. Mas por que ntpdate -q
disse que não há compensação o tempo todo?
# ntpq -p && echo '###' && ntpdate -q 123.123.123.123
remote refid st t when poll reach delay offset jitter
==============================================================================
*nt0 10.123.123.123 2 u 48 64 377 0.181 209.956 8.334
###
server 10.123.123.123, stratum 1, offset 0.207451, delay 0.04231
1 Dec 10:45:28 ntpdate[19895]: adjust time server 10.123.123.123 offset 0.207451 sec
Quando comparo a saída de dois sistemas diferentes, um com offset, um sem, emitindo echo +%H:%M:%S-%N
, mostra que o ntpd está correto e não é ntpdate. Mas por quê?
ntpq
envia o deslocamento em milissegundos. ntpdate
offset está em segundos. Seu deslocamento é, portanto, 209.956 ms
vs. 0.207451 sec
, o que é muito próximo (209ms vs. 207ms)