После холодной загрузки сервера Debian 6.0.8 (HP ProLiant) произошел ntpd
хаос с системным временем: смещение и дрожание по отношению к обычным и надежным эталонным серверам времени растут без ограничений. (Обратите внимание, что у идентичного сервера-близнеца проблем не было вообще.) После многих неудачных попыток решить проблему на ntpd
стороне, я решил попробовать перезагрузить компьютер, и все прошло нормально.
Чтобы исследовать проблему, я нашел это несоответствие, которое могло объяснить мои проблемы с часами:
root@n1:~# zgrep Detected /var/log/dmesg*
/var/log/dmesg:[ 0.004000] Detected 2400.110 MHz processor.
/var/log/dmesg.0:[ 0.004000] Detected 2383.579 MHz processor.
/var/log/dmesg.1.gz:[ 0.004000] Detected 2400.036 MHz processor.
/var/log/dmesg.2.gz:[ 0.004000] Detected 2400.298 MHz processor.
/var/log/dmesg.3.gz:[ 0.004000] Detected 2400.165 MHz processor.
/var/log/dmesg.4.gz:[ 0.004000] Detected 2400.410 MHz processor.
Обратите внимание, что во второй последней загрузке (проблемной) обнаруженная частота процессора является явным выбросом. Без выброса погрешность и стандартное отклонение обнаруженной частоты относительно номинальной составляет +0,15 МГц ± 0,25 МГц. Для проблемной загрузки у меня ошибка -16,4 МГц, что примерно в 100 раз больше, чем ожидалось.
Мои вопросы:
Может ли ошибка этого типа сделать
ntp
временную дисциплину нестабильной / непригодной для использования? Это причина моих проблем с часами?Является ли этот тип поведения симптомом неисправного оборудования? Должен ли сервер перейти на обслуживание hw?
Обновить
Некоторые полезные данные:
- ядро 2.6.32-5-amd64 (Debian 2.6.32-48squeeze4)
current_clocksource
являетсяtsc
- ошибка для
lpj
(конечно) согласуется с ошибкой на частоте процессора
Некоторые контекстные строки для вышеупомянутого grep
[ 0.000000] hpet clockevent registered
[ 0.000000] Fast TSC calibration using PIT
[ 0.004000] Detected 2400.110 MHz processor.
[ 0.000008] Calibrating delay loop (skipped), value calculated using timer frequency.. 4800.22 BogoMIPS (lpj=9600440)
ntpdc -c loopinfo
никогда не давал мне значение смещения частоты. Теперь после перезагрузки все в порядке, со стабильным значением дрейфа ... Кстати, ваше предложение верно, я наблюдаюlog/loopstats
за ненормальным поведением.