Friday, October 16, 2009

Cómo conservar la hora actual en los servidores Linux con zona horaria Argentina

Gracias al gobierno Argentino por ser tan previsor como siempre y avisar con 3 días de anticipación. Cristina te vas de vacaciones este verano, ya las planificaste o es muy apresurado pensar en eso?

Antes que nada comentarles que este procedimiento lo probé con Linux Debian 5.0.3 pero creo que es aplicable a cualquier linux que use tzdata.
En principio vamos a conocer nuestra versión de debian:

cat /etc/debian_version
5.0.3

Luego bajamos el parche en .deb provisto por la GENIA de Marga Manterola (Gracias Marga)

wget http://www.marga.com.ar/~marga/debian/tzdata/tzdata_2009l-0lenny1.1_all.deb

Para otras versiones pueden buscar en el siguiente directorio:
http://www.marga.com.ar/~marga/debian/tzdata/

Pero antes de aplicar el parche vamos a ver qué tiene planeado hacer con la hora nuestro debian para este año:

zdump -v /etc/localtime | egrep "2009|2010"
/etc/localtime Sun Mar 15 01:59:59 2009 UTC = Sat Mar 14 23:59:59 2009 ARST isdst=1 gmtoff=-7200
/etc/localtime Sun Mar 15 02:00:00 2009 UTC = Sat Mar 14 23:00:00 2009 ART isdst=0 gmtoff=-10800
/etc/localtime Sun Oct 18 02:59:59 2009 UTC = Sat Oct 17 23:59:59 2009 ART isdst=0 gmtoff=-10800
/etc/localtime Sun Oct 18 03:00:00 2009 UTC = Sun Oct 18 01:00:00 2009 ARST isdst=1 gmtoff=-7200
/etc/localtime Sun Mar 21 01:59:59 2010 UTC = Sat Mar 20 23:59:59 2010 ARST isdst=1 gmtoff=-7200
/etc/localtime Sun Mar 21 02:00:00 2010 UTC = Sat Mar 20 23:00:00 2010 ART isdst=0 gmtoff=-10800
/etc/localtime Sun Oct 17 02:59:59 2010 UTC = Sat Oct 16 23:59:59 2010 ART isdst=0 gmtoff=-10800
/etc/localtime Sun Oct 17 03:00:00 2010 UTC = Sun Oct 17 01:00:00 2010 ARST isdst=1 gmtoff=-7200
Como podrán ver, si no aplicamos el parche nuestro sistema debería de adelantarse una hora el día Sat Oct 17 a las 23:59:59 y pasar a el Sun Oct a las 18 01:00:00 (Esto DEBERIA de haber sido habitual, porque sería nuestro DST, pero de habitual tenemos poco en este país).

Bueno para corregirlo aplicamos el parche (.deb) que bajamos de la siguiente forma:
dpkg -i tzdata_2009l-0lenny1.1_all.deb

Una vez aplicado el parche podemos observar que ahora nuestro debian no va a realizar ningún cambio a lo largo de este año ni el que viene (Vemos que nos dice Cristina el año que viene).

zdump -v /etc/localtime | egrep "2009|2010"
/etc/localtime Sun Mar 15 01:59:59 2009 UTC = Sat Mar 14 23:59:59 2009 ARST isdst=1 gmtoff=-7200
/etc/localtime Sun Mar 15 02:00:00 2009 UTC = Sat Mar 14 23:00:00 2009 ART isdst=0 gmtoff=-10800

Bueno eso es todo y espero como siempre que haya sido útil.