Ver planes
ESEN

Hora y zona horaria del servidor: NTP y timedatectl

· 5 min de lectura · por el equipo técnico de VPS Argentina

La hora del servidor se administra con timedatectl: timedatectl set-timezone America/Argentina/Buenos_Aires deja la zona horaria y timedatectl set-ntp true enciende la sincronización automática. Con eso alcanza en Debian, Ubuntu y AlmaLinux actuales, que traen systemd-timesyncd o chrony. Una hora corrida rompe más cosas de las que parece: tareas programadas que corren cuando no deben, correos que llegan con fecha rara y validaciones que fallan.

Ver cómo está

timedatectl

La salida muestra la hora local, la UTC, la zona horaria y si la sincronización está activa. Las dos líneas que importan son Time zone y System clock synchronized: yes.

Ponerlo en hora de Argentina

timedatectl set-timezone America/Argentina/Buenos_Aires
timedatectl set-ntp true

La lista completa de zonas está en timedatectl list-timezones. Si el servidor atiende a usuarios de varios países, conviene dejarlo en UTC y manejar la zona en la aplicación.

Cuando la sincronización no arranca

Si set-ntp true no deja el reloj sincronizado, fijate qué servicio está instalado. En Debian y Ubuntu suele ser systemd-timesyncd; en AlmaLinux, chrony.

systemctl status systemd-timesyncd
systemctl status chronyd

Si no está ninguno, instalá chrony, que es el estándar actual:

apt install -y chrony    # Debian y Ubuntu
dnf install -y chrony    # AlmaLinux

Y comprobá contra qué servidores está sincronizando:

chronyc sources

Qué se rompe con la hora corrida

  • Las tareas programadas corren a destiempo: un respaldo a las 3 puede caer a las 6.
  • Los correos salen con una fecha que no coincide, y algunos filtros lo toman como señal de spam.
  • Los certificados pueden dar por inválido uno que todavía sirve, si el reloj está adelantado.
  • Los logs dejan de ser comparables con los de otros sistemas, y eso arruina cualquier diagnóstico.
  • Las sesiones y los tokens con vencimiento corto empiezan a fallar sin motivo aparente.

En el hosting compartido

Si no tenés un VPS, la hora del servidor la administramos nosotros y no se puede cambiar por cuenta. Lo que sí se puede es ajustar la zona horaria de la aplicación: en WordPress, en Ajustes › Generales; en PHP, con date_default_timezone_set().

Preguntas frecuentes

¿Conviene UTC o la hora de Argentina?

Si el servidor es tuyo y mirás los logs vos, la hora local es más cómoda. Si tenés varios servidores o usuarios en distintos países, UTC evita confusiones y la aplicación se encarga de mostrar la hora de cada uno.

Cambié la zona horaria y los logs siguen igual

Los servicios que ya estaban corriendo mantienen la zona con la que arrancaron. Reiniciá los que te interesen, o el servidor si es más simple.

¿El cambio de horario de verano se maneja solo?

Sí, siempre que uses el nombre de la zona y no un desplazamiento fijo. Argentina hoy no aplica horario de verano, pero si eso cambiara, America/Argentina/Buenos_Aires se actualiza con el paquete de zonas horarias.

¿Por qué mi reloj se atrasa?

Sin sincronización activa, el reloj de una máquina virtual se corre con el tiempo. Encendé NTP con timedatectl set-ntp true y revisá con chronyc sources que esté hablando con algún servidor.

¿Afecta a la base de datos?

Sí: MySQL toma la hora del sistema salvo que le configures otra. Después de cambiar la zona conviene reiniciar el servicio para que las marcas de tiempo queden consistentes.

Seguí leyendo