
Oficialmente el cambio de horario de verano en chile debería ocurrir el 25 de abril de 2015, pero el gobierno decidió mantener el horario de verano como definitivo (ver Anuncio: Se suspende indefinidamente el cambio de hora)
Todo bien hasta aquí, el problema es que en los servidores se debe cambiar esta configuración, lo que técnicamente no es difícil de resolver, pero logísticamente tiene un costo, hay que invertir tiempo para hacer el cambio.
En linux existe un paquete llamado tzdata que controla estos cambios de horario, lo que debemos hacer es actualizar este paquete con la nueva información.
En RHEL/CentOS ya esta disponible la última versión de tzdata que corrije este cambio es
tzdata-2015a-1.el5
Para ver que datos de cambio contiene usamos el comando
#zdump -v America/Santiago | grep 2015
America/Santiago Sun Apr 26 02:59:59 2015 UTC = Sat Apr 25 23:59:59 2015 CLST isdst=1 gmtoff=-10800
America/Santiago Sun Apr 26 03:00:00 2015 UTC = Sat Apr 25 23:00:00 2015 CLT isdst=0 gmtoff=-14400
America/Santiago Sun Sep 6 03:59:59 2015 UTC = Sat Sep 5 23:59:59 2015 CLT isdst=0 gmtoff=-14400
America/Santiago Sun Sep 6 04:00:00 2015 UTC = Sun Sep 6 01:00:00 2015 CLST isdst=1 gmtoff=-10800
Para ver la versión instalada
# rpm -qa |grep tzdata
tzdata-java-2011g-1.el6.noarch
tzdata-2013b-1.el6.noarch
Para actualizar a la última versión ejecutar
#yum update tzdata
luego revisar el cambio:
# rpm -qa |grep tzdata
tzdata-java-2012j-1.el5
tzdata-2015a-1.el5
#zdump -v America/Santiago | grep 2015
America/Santiago Sun Apr 26 02:59:59 2015 UTC = Sat Apr 25 23:59:59 2015 CLST isdst=1 gmtoff=-10800
America/Santiago Sun Apr 26 03:00:00 2015 UTC = Sun Apr 26 00:00:00 2015 CLT isdst=0 gmtoff=-10800
Verificar que la variable gtmoff=10800 valor en segundos que expresado en horas son 3, que es el valor esperado.
Fuente de información
http://www.gob.cl/2015/01/28/ministerio-de-energia-da-conocer-modificaciones-al-cambio-de-hora-en-chile-continental-e-insular/
https://access.redhat.com/solutions/1348493
https://rhn.redhat.com/errata/RHEA-2015-0141.html
http://lists.centos.org/pipermail/centos-announce/2015-February/020925.html
Descargar paquete CentOS
CentOS 5:
i386 http://mirror.centos.org/centos/5/updates/i386/RPMS/tzdata-2015a-1.el5.i386.rpm
x86_64 http://mirror.centos.org/centos/5/updates/x86_64/RPMS/tzdata-2015a-1.el5.x86_64.rpm
CentOS 6:
i386 http://mirror.centos.org/centos/6/updates/i386/Packages/tzdata-2015a-1.el6.noarch.rpm
x86_64 http://mirror.centos.org/centos/6/updates/x86_64/Packages/tzdata-2015a-1.el6.noarch.rpm
CentOS 7:
x86_64 http://mirror.centos.org/centos/7/updates/x86_64/Packages/tzdata-2015a-1.el7_0.noarch.rpm
En ubuntu
Verificar la versión de tzdata con:
# dpkg -l |grep tzdata
ii tzdata 2015a-0ubuntu0.14.04 all time zone and daylight-saving time data
En caso de estar desactualizada ejecutar:
# apt-get install tzdata
y verificar:
#zdump -v America/Santiago | grep 2015
America/Santiago Sun Apr 26 02:59:59 2015 UT = Sat Apr 25 23:59:59 2015 CLST isdst=1 gmtoff=-10800
America/Santiago Sun Apr 26 03:00:00 2015 UT = Sun Apr 26 00:00:00 2015 CLT isdst=0 gmtoff=-10800
11 comentarios:
muchas gracias amigo. muy util. que estes bien.
Benjamín
Excelente que sea útil, un abrazo.
como lo hago con un solaris amigo?
Hola Enrique
Tengo entendido que oracle ya dispone de un parche, por lo que podrías abrir un caso y pedirlo, ahora en caso de no tener contrato de mantención, podrías intentar bajando el rpm source, extraer el archivo southamerica y compilarlo usando el comando "zic".
#zic southamerica
luego con zdump comprobar que la diferencia sea de tres horas.
Saludos
hola, tengo una duda. Me gustaria saber la diferencia entre el parche que comienza con tzdata y el que comienza con tzdata-java. Agradezco la explicación.
Hola la diferencia es que el tzdata es para aplicar al sistema, y el tzdata aplica sobre java, java no usa el timezone de la máquina. Si tu servidor no usa java no lo necesitas.
Saludos
muchas gracias, información super últil.
Edo, quedé con una duda sobre lo que mencionas con lo de Java, tengo una aplicación que está en java y los logs que arroja los comenzó a escribir con una hora menos, siendo que tengo instalado los tzdata correspondietes, la hora del sistema y del hardware están correctos, solo es esta aplicación la que me dió problemas...
Hola, me funcionó pero me gatilló un problema: Los cron se ejecutan una hora después de lo especificado en el /etc/crontab
y eso que la fecha corresponde:
Ejemplo
%] date
Wed May 13 10:36:30 CLT 2015
Así que para ejecutar a la hora correcta, tengo que poner en el cron la hora anterior... es decir, para que se ejcute a las 10:36 debiera poner:
36 9 * * * root /root/prueba.sh
Hola
Ocurre que algunos servicios toman el so horario al subir, como es el caso de crond, snmpd y otros.
Para resolver esto se debe reiniciar el servicio crond
/etc/init.d/crond
Saludos
Muchas Gracias Eduardo, efectivamente había encontrado justo lo de reiniciar el servicio del cron y funcionó...
Muchas Gracias de nuevo
Publicar un comentario