Es posible que haya configurado trabajos cron que se ejecuta en un momento específico para hacer copias de seguridad de archivos importantes o realizar cualquier tarea relacionada con el sistema. O bien, es posible que haya configurado un servidor de registro para rotar los registros fuera de su sistema a intervalos de tiempo regulares. Si su reloj no está sincronizado, esos trabajos no se ejecutarán en el momento adecuado. Por eso es importante configurar una zona horaria correcta en los sistemas Linux y mantener el reloj sincronizado con Internet. Esta guía describe cómo configurar la sincronización de tiempo en Ubuntu Linux. Los pasos que se indican a continuación se han probado en Ubuntu 18.04; sin embargo, son los mismos para otros sistemas basados en Ubuntu que usan timesyncd de systemd. servicio.
Configurar sincronización de tiempo en Ubuntu
Por lo general, configuramos la zona horaria durante la instalación. Sin embargo, puede cambiarlo o establecer una zona horaria diferente si lo desea.
Primero, veamos la zona horaria actual en nuestro sistema Ubuntu usando el comando "fecha":
$ date
Salida de muestra:
Tue Jul 30 11:47:39 UTC 2019
Como puede ver en el resultado anterior, el comando "fecha" muestra la fecha real y la hora actual. Aquí, mi zona horaria actual es UTC que significa Tiempo Universal Coordinado .
Alternativamente, puede buscar el /etc/timezone archivo para encontrar la zona horaria actual.
$ cat /etc/timezone UTC
Ahora, veamos si el reloj está sincronizado con Internet. Para hacerlo, simplemente ejecute:
$ timedatectl
Salida de muestra:
Local time: Tue 2019-07-30 11:53:58 UTC Universal time: Tue 2019-07-30 11:53:58 UTC RTC time: Tue 2019-07-30 11:53:59 Time zone: Etc/UTC (UTC, +0000) System clock synchronized: yes systemd-timesyncd.service active: yes RTC in local TZ: no
Como puede ver, el comando "timedatectl" muestra la hora local, la hora universal, la zona horaria y si el reloj del sistema está sincronizado con los servidores de Internet y si el systemd-timesyncd.service está activo o inactivo. En mi caso, el reloj del sistema se sincroniza con los servidores horarios de Internet.
Si el reloj no está sincronizado, verá "Reloj del sistema sincronizado:no" como se muestra en la siguiente captura de pantalla.
La sincronización horaria está deshabilitada.
Si ve "Reloj del sistema sincronizado: valor establecido como no , el servicio timesyncd podría estar inactivo. Entonces, simplemente reinicie el servicio y vea si ayuda.
$ sudo systemctl restart systemd-timesyncd.service
Ahora verifique el estado del servicio timesyncd:
$ sudo systemctl status systemd-timesyncd.service ● systemd-timesyncd.service - Network Time Synchronization Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2019-07-30 10:50:18 UTC; 1h 11min ago Docs: man:systemd-timesyncd.service(8) Main PID: 498 (systemd-timesyn) Status: "Synchronized to time server [2001:67c:1560:8003::c7]:123 (ntp.ubuntu.com)." Tasks: 2 (limit: 2319) CGroup: /system.slice/systemd-timesyncd.service └─498 /lib/systemd/systemd-timesyncd Jul 30 10:50:30 ubuntuserver systemd-timesyncd[498]: Network configuration changed, trying to estab Jul 30 10:50:31 ubuntuserver systemd-timesyncd[498]: Network configuration changed, trying to estab Jul 30 10:50:31 ubuntuserver systemd-timesyncd[498]: Network configuration changed, trying to estab Jul 30 10:50:32 ubuntuserver systemd-timesyncd[498]: Network configuration changed, trying to estab Jul 30 10:50:32 ubuntuserver systemd-timesyncd[498]: Network configuration changed, trying to estab Jul 30 10:50:35 ubuntuserver systemd-timesyncd[498]: Network configuration changed, trying to estab Jul 30 10:50:35 ubuntuserver systemd-timesyncd[498]: Network configuration changed, trying to estab Jul 30 10:50:35 ubuntuserver systemd-timesyncd[498]: Network configuration changed, trying to estab Jul 30 10:50:35 ubuntuserver systemd-timesyncd[498]: Network configuration changed, trying to estab Jul 30 10:51:06 ubuntuserver systemd-timesyncd[498]: Synchronized to time server [2001:67c:1560:800
Si este servicio está habilitado y activo, el reloj de su sistema debería sincronizarse con los servidores de hora de Internet.
Puede verificar si la sincronización horaria está habilitada o no usando el comando:
$ timedatectl
Si aún no funciona, ejecute el siguiente comando para habilitar la sincronización de tiempo:
$ sudo timedatectl set-ntp true
Ahora el reloj de su sistema se sincronizará con los servidores de tiempo de Internet.
Cambiar la zona horaria usando el comando Timedatectl
¿Qué pasa si quiero usar una zona horaria diferente a UTC? ¡Es fácil!
Primero, lista de zonas horarias disponibles usando el comando:
$ timedatectl list-timezones
Verá una salida similar a la imagen de abajo.
Enumere las zonas horarias usando el comando timedatectl
Puede configurar la zona horaria deseada (por ejemplo, Asia/Kolkata) usando el comando:
$ sudo timedatectl set-timezone Asia/Kolkata
Vuelva a verificar si la zona horaria realmente se ha cambiado usando el comando "fecha":
$ date Tue Jul 30 17:52:33 IST 2019
O use el comando timedatectl si desea obtener un resultado detallado:
$ timedatectl Local time: Tue 2019-07-30 17:52:35 IST Universal time: Tue 2019-07-30 12:22:35 UTC RTC time: Tue 2019-07-30 12:22:36 Time zone: Asia/Kolkata (IST, +0530) System clock synchronized: yes systemd-timesyncd.service active: yes RTC in local TZ: no
Como habrás notado, cambié la zona horaria de UTC a IST (hora estándar de la India).
Para volver a la zona horaria UTC, simplemente ejecute:
$ sudo timedatectl set-timezone UTC
Cambiar la zona horaria usando Tzdata
En versiones anteriores de Ubuntu, el comando Timedatectl no está disponible. En tales casos, puede usar Tzdata (datos de la zona horaria) para configurar la sincronización horaria.
$ sudo dpkg-reconfigure tzdata
Elige el área geográfica en la que vives. En mi caso, elegí Asia . Seleccione Aceptar y presione la tecla ENTER.
configurar la zona horaria usando el comando tzdata
A continuación, seleccione la ciudad o región correspondiente a su zona horaria. Aquí he elegido Kolkata .
configurar la zona horaria usando tzdata
Finalmente, verá una salida similar a la siguiente en la Terminal.
Current default time zone: 'Asia/Kolkata' Local time is now: Tue Jul 30 19:29:25 IST 2019. Universal Time is now: Tue Jul 30 13:59:25 UTC 2019.
Configurar zona horaria en modo gráfico
Es posible que algunos usuarios no se sientan cómodos con la forma CLI. Si eres uno de ellos, puedes cambiar fácilmente hacer todo esto desde el panel de configuración del sistema en modo gráfico.
Presiona la tecla Súper (tecla de Windows), escriba configuración en el tablero de Ubuntu y haga clic en Configuración icono.
Inicie la configuración del sistema desde el tablero de Ubuntu
Alternativamente, haga clic en la flecha hacia abajo ubicada en la esquina superior derecha de su escritorio de Ubuntu y haga clic en el ícono de Configuración en la esquina izquierda.
Inicie la configuración del sistema desde el panel superior
En la siguiente ventana, elija Detalles y luego haga clic en Fecha y hora opción. Activa ambos Fecha y hora automáticas y Zona horaria automática opciones.
Establecer zona horaria automática en Ubuntu
¡Cierra la ventana de Configuración y listo! El reloj de su sistema ahora debería sincronizarse con los servidores de tiempo de Internet.