NTP (Network Time Protocol) es un protocolo que sincroniza la hora de su sistema con los servidores NTP en línea con una precisión de solo unos pocos milisegundos. NTP escucha en el puerto UDP 123. En este artículo, veremos cómo puede sincronizar la hora usando el servidor NTP en Ubuntu 18.04 y lo mismo debería funcionar también en ubuntu 16.04.
Tanto la hora del sistema como la hora del hardware pueden desviarse debido a pequeñas inconsistencias en las frecuencias del reloj. A medida que pasa el tiempo, estas variaciones se acumulan y generan diferencias de tiempo significativas que pueden causar problemas con herramientas como cron y "make", que examina las marcas de tiempo en los archivos.
Cómo instalar el servidor NTP
Para instalar el servidor NTP en su sistema Ubuntu, abra su terminal y ejecute el siguiente comando:
apt-get install ntp
Para verificar que la instalación se realizó sin problemas, ejecute
dpkg -l | grep "ntp"
Salida
ii ntp 1:4.2.8p4+dfsg-3ubuntu5.8 amd64 Network Time Protocol daemon and utility programs
Luego, actualice el sistema usando el siguiente comando
apt-get update
Después de una actualización exitosa del sistema, verifique si NTP se está ejecutando usando el siguiente comando
systemctl status ntp
Para verificar que NTP funciona como debería, ejecute el siguiente comando
ntpq -p
Este comando consulta y muestra los grupos de servidores NTP a los que se ha conectado ntpd.
Salida
Cómo forzar una actualización de reloj usando ntp
A veces, puede encontrarse con un sistema sin un reloj de tiempo real respaldado por batería y la sincronización de la hora se convierte en un problema. En este caso, es posible que deba forzar una actualización del reloj para que la hora de su sistema esté sincronizada sin demoras. En lugar de ejecutar ntpdate
comando que ha quedado obsoleto, ejecute los siguientes comandos.
Primero, detenga el servicio NTP
systemctl stop ntp
Ejecute el siguiente comando
ntpd -gq
Salida
El -gq
La opción le dice al demonio NTP que rectifique el tiempo independientemente del sesgo (g) y salga (q) inmediatamente.
Finalmente, inicie el servicio NTP
systemctl start ntp
Uso de timedatectl y timesyncd
ntpdate fue eliminado en versiones anteriores de Ubuntu y en favor de timedatectl. Para comprobar el estado del tiempo de ejecución
timedatectl
Salida
root@ip-172-31-41-251:/home/ubuntu# timedatectl status
Local time: Mon 2018-04-09 18:59:18 UTC
Universal time: Mon 2018-04-09 18:59:18 UTC
RTC time: Mon 2018-04-09 18:59:17
Time zone: Etc/UTC (UTC, +0000)
Network time on: yes
NTP synchronized: yes
RTC in local TZ: no
El servidor de nombres utilizado para obtener la hora de timedatectl y timesyncd se encuentra en /etc/systemd/timesyncd.conf
Se pueden encontrar archivos de configuración adicionales en /etc/systemd/timesynd.conf.d
Otro método que puede usar para configurar la hora del sistema inmediatamente es usar sntp como se muestra a continuación.
sntp -s 24.56.178.140
La dirección después del indicador -s representa un servidor NTP. Siéntase libre de usar cualquier dirección de servidor NTP.
Finalmente, también puede ignorar el umbral de pánico, que por defecto es de 1000 segundos. Esto se puede hacer de las siguientes maneras:
- editando el
/etc/default/ntp
y asegurarse de que la opción -g esté presente. - editando el
/etc/ntp.conf
y colocandotinker panic 0
en la parte superior
Cuando se hayan realizado cambios en los archivos de configuración, asegúrese de volver a cargar el servicio ntp.
systemctl restart ntp
Para obtener más información sobre los servidores de tiempo NTP, visite el sitio NTP. En este artículo, hemos visto cómo puede instalar y sincronizar la hora usando el servidor NTP en los sistemas Ubuntu para mantener la hora exacta de su sistema. Gracias por su tiempo. Siéntase libre de probar los comandos y darnos su opinión.