¿Cómo puedo saber si mi sistema Debian mantiene la hora exacta del sistema al obtener actualizaciones de NTP? Básicamente, quiero activar esto si está actualmente desactivado, pero no sé si está activado o desactivado.
Corriendo
ps ax | grep ntpd
y comprobando que la salida contiene algo como
6497 ? Ss 0:04 /usr/sbin/ntpd ...
confirmará que ntpd se está ejecutando. Si no se está ejecutando, puede comenzar con
/etc/init.d/ntp start
Si recibe un mensaje de error No such file or directory
, deberá instalar el paquete ntp
sudo apt-get install ntp
Una vez que tenga ntpd ejecutándose, puede hablar con el comando ntpq .
ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
*time.nist.gov .ACTS. 1 u 753 1024 377 139.432 -0.562 2.199
+sip.dicode.nl 193.190.230.66 2 u 733 1024 163 33.197 0.297 0.132
+194.109.64.200 192.87.106.2 2 u 779 1024 377 35.214 -0.323 0.027
LOCAL(0) .LOCL. 10 l 3 64 377 0.000 0.000 0.001
Lo que muestra (desplazamiento) que mi sistema está <1 segundo fuera de sincronización; puedo vivir con eso.
Si tiene estadísticas de pares habilitadas en su, /etc/ntp.conf
entonces tiene estadísticas en /var/log/ntpstats/peerstats
. (El directorio y el nombre del archivo se especificarán en ntp.conf). Puede escanearlo para ver qué tan bien está rastreando sus servidores. El comando grep -v 127.127.1.0 /var/log/ntpstats/peerstats
mostrará todas las líneas, excepto las del reloj local. El primer número de coma flotante es el desplazamiento en segundos. Cuanto más cerca esté de cero, mejor. Debe haber una mezcla de valores positivos y negativos. Use zgrep para buscar datos históricos en los registros rotados con una .gz
extensión.
Para ver cuáles son los valores, use ntpq -p
como sugirió Iain.
Si ejecuta Munin para monitorear su sistema, puede rastrear sus estadísticas ntp por usted. Creo que el desplazamiento que registra es el valor relativo a la fuente de sincronización actual. Ese es el que está en la línea que comienza con un asterisco (*) en la ntpq -p
salida. Munin se puede configurar para notificar que su desplazamiento es demasiado grande. Mis líneas de advertencia son las siguientes (veces en milisegundos):
ntp_offset.delay.warning 40 ntp_offset.offset.warning -15: 15
Una forma barata y sucia de comprobar el reloj local frente a otra máquina es esta secuencia de comandos de shell:
date; telnet somehost 13; date
"somehost" tiene que ejecutar el protocolo RFC 867 "durante el día", y eso ya no es tan común. inetd puede proporcionar "día" por sí mismo, y algunos hosts todavía tienen habilitado "día".
Puede obtener una verificación independiente en el reloj local, sin necesidad de utilizar NTP.