En ocasiones es posible que la hora del reloj interno de tu servidor no marque la hora correcta. Esto es muy sencillo de resolver siguiendo estas instrucciones.
Importante
Si tu servidor no tiene SystemD como sistema de inicio, ve al apartado "Distribuciones de GNU/Linux sin SystemD". Esto afecta a los servidores con el sistema operativo:
- Inferior a Debian 8
- Inferior a Ubuntu 16.04
- Inferior a CentOS 7
Podemos comprobar el estado del reloj en Linux con este comando:
# timedatectl
Esto nos mostrará la siguiente salida:
Local time: Wed 2022-11-02 10:47:30 CET
Universal time: Wed 2022-11-02 09:47:30 UTC
RTC time: Wed 2022-11-02 09:47:31
Time zone: Europe/Madrid (CET, +0100)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
En esta salida es importante fijarnos que el NTP Service se encuentre activo. Si no lo está, podemos activarlo de la siguiente forma:
# timedatectl set-ntp true
Para actualizar la hora del servidor, debemos de reiniciar un servicio concreto:
systemctl restart systemd-timesyncd.service
Con esto, debería de ser suficiente para que marque de nuevo la hora correctamente.
Cambiar zona horaria
También es posible cambiar la zona horaria, ejecutando el siguiente comando mostrará la lista de zonas:
# timedatectl list-timezones
Y para modificarla, sería reemplazando <time_zone> por la deseada:
# timedatectl set-timezone <time_zone>
Un ejemplo para modificar a la zona America/New_York:
# timedatectl set-timezone America/New_York
Información
Es posible que en versiones antiguas (como CentOS 7) os aparezca el siguiente error:
Failed to set ntp: NTP not supported
En este caso, tenéis que instalar el paquete chrony y luego podréis activar en NTP con timedatectl
Distribuciones de GNU/Linux sin Systemd
Para la distribuciones basadas en Debian, para actualizar el reloj del servidor podéis usar el comando:
ntpdate-debian
También, si tenéis configurado manualmente un servidor NTP, podéis reiniciar el servicio:
/etc/init.d/ntp restart # O también
service ntp restart
Para distribuciones basadas en CentOS, para actualizar el reloj del servidor podéis usar este otro comando:
service ntpd restart