Introducción

Uno de los componentes más importantes de la entrega de software digital es la sincronización precisa. Ya sea que desee mantener registros precisos o actualizar correctamente su base de datos, la sincronización de la hora es vital.

Este tutorial le ayudará a configurar la sincronización de la hora en su Ubuntu 18.04 VPS o servidor dedicado. También comprenderá algunos de los comandos basados ​​en el tiempo más utilizados y tendrá las habilidades necesarias para implementar una utilidad de tiempo de red opcional.

¿Listo? ¡Vamos!

Comprender los comandos básicos de Ubuntu 18.04

El comando de hora más utilizado en Ubuntu 18.04 es el fecha Mando. Este comando se usa para verificar la hora y la fecha en un servidor Ubuntu:

$ sudo date

Esto proporciona una salida de fecha y hora en su sistema Ubuntu 18.04

SunOct 28 16:03:38 UTC 2018

Como se puede ver; El comando anterior configurará su servidor Ubuntu en la zona horaria UTC estándar. Siempre es bueno establecer la zona horaria de manera coherente con la hora mundial coordinada y evitar una infraestructura general en varias zonas horarias.

Sin embargo, si tiene proyectos con requisitos de tiempo complejos, puede cambiar fácilmente su zona horaria a través del timedatectl Mando.

Para cambiar su zona horaria, primero ejecute el siguiente comando para ver una lista de zonas horarias:

$ sudo timedatectl list-timezones

Desplácese hacia arriba y hacia abajo en esta lista para determinar y anotar su zona horaria preferida. prensa q para salir de esta lista y emitir el comando para implementar esta zona horaria:

 $ sudo timedatectl set-timezoneAmerica/New_York

Esto cambiará su zona horaria a America / New_York. Para verificar que esta zona horaria se haya implementado correctamente, ejecute el siguiente comando:

$ sudo date

Esto le dará el siguiente resultado:

SunOct 28 12:18:59 EDT 2018

¡Eso es! Ahora sabe cómo ver o cambiar su zona horaria en el sistema Ubuntu 18.04.

Implementación de Timesyncd

Durante mucho tiempo, el ntpd (Network Time Protocol Deamon) se usó para manejar la sincronización de tiempo en los sistemas Ubuntu. El ntpd está conectado a varios servidores NTP para proporcionar actualizaciones de tiempo precisas de forma continua.

A pesar de su poder y facilidad de uso, el ntpd ha sido reemplazado por el servicio timesyncd en los últimos sistemas Ubuntu. El servicio timesyncd es casi idéntico al ntpd en términos de cómo funciona y el servidor horario al que se conecta. Sin embargo, timesncd tiene varias ventajas sobre ntpd, ya que es liviano y se puede integrar sin problemas en los sistemas systemd y Ubuntu.

Para verificar el estado de timesyncd en su sistema Ubuntu 18.04, ejecute el siguiente comando:

$ sudo timedatectl

Esto le dará el siguiente resultado:

   Local time: Sun 2018-10-28 12:54:53 EDT
                    Universal time: Sun 2018-10-28 12:54:53 UTC
                                  RTC time: Sun 2018-10-28 12:54:53
                                 Time zone: America/New_York (EDT, -0400)
       System clock synchronized: yes
systemd-timesyncd.service active: yes
                 RTC in local TZ: no

El valor YES para el reloj del sistema sincronizado prueba que la hora está sincronizada correctamente y el valor YES para systemd-timesyncd.service active indica que Timesyncd se ha activado y funciona correctamente.

Si timesyncd está inactivo, ejecute el siguiente comando para activarlo;

$ sudo timedatectl set-ntpon

Después de habilitar timesyncd, ejecute timedatectl para verificar el estado de la hora de la red.

Cambiar a Ntpd

Timesyncd es excelente para muchos propósitos, pero no para todos. Algunas aplicaciones son sensibles al tiempo y ntpd las puede manejar mejor. Esto se debe a que ntpd utiliza técnicas sofisticadas y es capaz de manejar incluso la perturbación de tiempo más pequeña. Si está trabajando en aplicaciones urgentes, siga estos pasos para cambiar a la utilidad ntpd.

Primero, ejecute el siguiente comando para deshabilitar la sincronización temporal:

$ sudo timedatectl set-ntpno

A continuación, ejecute el siguiente comando para verificar el estado de timesyncd:

$ sudo timedatectl

Verifique el valor de systemd-timesyncd.service activo es No a la salida. Ahora puede ejecutar el siguiente comando para instalar ntp:

$ sudo apt update
$ sudo apt install ntp

El ntpd se instalará y se iniciará automáticamente. Ejecute el siguiente comando para verificar los detalles de estado de ntpd:

$ sudo ntpq -p

Esto le dará un resultado similar al siguiente:

 remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 0.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 1.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 2.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 3.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.000
 ntp.ubuntu.com  .POOL.          16 p    -   64    0    0.000    0.000   0.000
+ec2-52-0-56-137 216.239.35.0     2 u   16  64    1    7.872   -2.137   1.485
+66.220.10.2     129.6.15.30      2 u   12  64    1   65.204    3.740   2.686
+block.steinhoff 209.51.161.238   2 u   11  64    1   33.364    1.710   3.586
+eterna.binary.n 216.229.0.50     3 u   11  64    1   35.330    2.821   2.839
+2604:a880:800:1 209.51.161.238   2 u   14  64    1    0.394    0.386   2.462
+ec2-52-6-160-3. 130.207.244.240  2 u   11  64    1    8.150    2.050   3.053
+mx.danb.email   127.67.113.92    2 u   13  64    1   63.868    1.539   2.240
*hydrogen.consta 129.6.15.28      2 u   12  64    1    2.989    1.755   2.563
.....

Conclusión

¡Felicidades! Aprendió cómo cambiar las zonas horarias, verificar la hora del sistema y proporcionar la sincronización horaria predeterminada. Para obtener más información sobre ntpd, consulte la página de documentación de NTP.