Reloj del sistema: ¿UTC u hora local?
El reloj del sistema, hardware clock, (mantenido por una pila en una máquina física) no tiene información de zona horaria. Windows lo interpreta como hora local y Linux lo suele hacer como UTC.
En la instalación de Centos 6 había un checkbox «System clock uses UTC». En CentOS 7 ha desaparecido, sustiuído por un dial con la hora local, dependiente de la zona horaria seleccionada y del reloj del sistema. Debemos asegurarnos de que ambos datos sean correctos. Hoy se me ha pasado ese detalle. La zona horaria estaba bien pero no la hora. Es muy confuso porque el instalador escribe en el reloj la hora incorrecta.
De aquí en adelante, comprobar al instalar un servidor:
- La hora del reloj en la BIOS es UTC.
- La hora que muestra el instalador, después de seleccionar la zona horaria, es la hora local correcta.
- Verificación final con el comando
hwclock --debug
:
[root@gitlab ~]# hwclock --debug
hwclock from util-linux 2.23.2
Using /dev interface to clock.
Last drift adjustment done at 0 seconds after 1969
Last calibration done at 0 seconds after 1969
Hardware clock is on UTC time
Assuming hardware clock is kept in UTC time.
Waiting for clock tick...
...got clock tick
Time read from Hardware Clock: 2016/08/11 09:54:12
Hw clock time : 2016/08/11 09:54:12 = 1470909252 seconds since 1969
Thu 11 Aug 2016 11:54:12 AM CEST -0.318263 seconds
Esta información despeja cualquier duda:
- Hora del reloj del sistema (
Time read from Hardware Clock
)
- Interpretación UTC u hora local del sistema operativo: en este caso UTC:
Assuming hardware clock is kept in UTC time
.
- Hora del sistema operativo teniendo en cuenta zona horaria (última línea):
Thu 11 Aug 2016 11:54:12 AM CEST