Tengo una caja (física) que ejecuta un Ubuntu despojado; De vez en cuando (6 veces en 3 meses), el reloj salta hacia atrás exactamente 300 segundos (+ - 0.01 segundos; siempre exactamente 300 segundos). Sucede de un minuto a otro (tengo una máquina externa que lo sondea una vez por minuto).
La caja está ejecutando 2.6.26-generic (kernel compilado personalizado), Ubuntu 9.04 (lo sé, estoy tratando de actualizarlo, pero está semi-incrustado). No hay nada en los registros que indique lo que sucedió, y tengo una gran selección de servidores ntp pool.ntp.org, que corrigen el problema después de un tiempo.
¿Alguien sabe lo que podría ser la causa?
Adicional 1:
También tengo una serie de otras cajas que ejecutan el mismo kernel (binario idéntico) y pequeñas variaciones del mismo software, que no tienen este problema. También he cambiado el hardware.
Adicional 2 (resumen de mis comentarios individuales):
- Sé que 9.04 está desactualizado, estoy de acuerdo en que debe actualizarse, y esta decisión está fuera de mi control. Porque la gerencia.
- He probado una gran cantidad de servidores ntp y una pequeña cantidad. Todavía sucede en ambos casos; si tengo una gran cantidad de servidores ntp, entonces se arregla más rápido.
- He cambiado el hardware
- Estoy usando el mismo kernel / sistema operativo en otra caja (con hardware idéntico), que no muestra el problema.
- Reiniciar no ha ayudado. (Este problema ha estado en curso durante aproximadamente 6 meses)
- El tiempo de actividad es de aproximadamente 3 meses. El cuadro está "siempre encendido", ejecutando un PBX (asterisco).
- En este momento, el hwclock coincide exactamente con el reloj del software: 0.000000 segundos
- No he podido encontrar ningún trabajo cron que lea el reloj del hardware.
- No hay un patrón relacionado con la carga (aunque la carga es bastante baja de todos modos).
- Sucede durante el día y la noche.
- No sucede a intervalos regulares. De los de los últimos 3 meses, la mitad ha sucedido en los últimos 9 días.
- Esto no es "deriva": el 99% del tiempo, está dentro de una pequeña fracción de segundo, luego, de un minuto al siguiente, salta EXACTAMENTE 300 segundos, hacia atrás. Entonces, un minuto podría decir que son las 3:07:03, haciendo coincidir mi otra computadora con 1 microsegundo, 60 segundos después, dice 3:04:03.
- No puedo encontrar nada en los registros.
Respuestas:
Esto suena como un reloj de tiempo real (RTC) que falla. Si se trata de hardware de repuesto, puede confirmar el problema ejecutando un sistema operativo diferente, como arrancar un CD de Linux en vivo o un arranque PXE, y ver si puede replicar la falla. Si se produce un sesgo exacto al mismo tiempo en otro sistema operativo, entonces ha confirmado que el problema es una falla de hardware.
Suponiendo que es el RTC, puede probar las siguientes soluciones en orden de gravedad.
fuente
Puede ejecutar un script en el cuadro que realiza un seguimiento de los procesos en ejecución y al mismo tiempo controla el reloj. Si el reloj retrocede repentinamente, registra la lista de procesos activos en ese momento. Tal vez eso dé una pista de qué proceso cambia el reloj.
Por supuesto, esto supone que tiene un problema de software. No encontrará nada de esta manera si solo su hardware falla.
fuente
La respuesta de Michael Yasumoto parece cubrir todas las bases: estoy de acuerdo en que probablemente esté buscando hardware inestable, pero esta es una idea práctica: use una máquina confiable con muy buena conectividad interna que tenga un puñado de ciclos de sobra para ejecutar un Servidor NTP, y luego haga " lo que sea necesario " para hacer que el cliente NTP que se ejecuta en la caja PBX incorporada envíe correo no deseado a este servidor NTP local para solicitudes de tiempo con la mayor frecuencia posible (por ejemplo, cada 30 segundos).
Luego, cuando la caja finalmente se actualice, déjelo a un lado debidamente y descubra qué le pasaba en algún momento (TM). :PAGS
fuente