Estoy ejecutando clockspeed-0.62 (software DJB) en Ubuntu 13.10. He configurado zonas horarias para que /usr/share/zoneinfo
haya un enlace a /usr/share/right
, y el mío /etc/leapsecs.dat
está actualizado, es decir, contiene 25 segundos intercalares.
¿Alguien podría ayudarme a comprender (y resolver) por qué date -u
el comando muestra la hora con 25 segundos de anticipación export TZ=UTC; date
?
Salida de date; (export TZ=UTC; date); date -u
:
Mon Feb 3 22:33:56 CET 2014
Mon Feb 3 21:33:56 UTC 2014
Mon Feb 3 21:34:21 UTC 2014
Respuesta1
TZ=UTC
hace que glibc use el archivo de información de zona llamado "UTC", que en su caso /usr/share/zoneinfo/right/UTC
contiene ajustes de segundos intercalares.
La -u
opción es en realidad equivalente a configurarTZ=UTC0
. ya que hayno hay ningún archivo de información de zona nombradoUTC0
, la configuración se reinterpreta como si estuviera en el formato "desplazamiento estándar" (como entzset(3)). En este formato, las tres primeras letras solo se utilizan como nombre visible yel "0" se utiliza como una compensación simple de UTC(es decir, compensado con respecto al reloj del sistema).