El rincón de Zerial

Informática, GNU/Linux, Seguridad, Hacking, Programación, Ocio

Solución al no-cambio de hora en Chile

Marzo 11th, 2012 · 15 Comentarios

En Chile, nuevamente el Gobierno cambió la configuración de la zona horaria, aplazando el cambio de hora que debería haberse hecho hoy, para el 28 de Abril.

La medida, que replica el esquema adoptado el año pasado, establece que el horario de invierno entrará en vigencia la medianoche del Sábado 28 de Abril y posteriormente, se retornará al horario de verano, la medianoche del Sábado 1 de Septiembre.

Para UNIX existe una solución que es modificar el archivo que define el TimeZone de Chile/Continental. Esta solución es mucho más limpia que cambiar la hora a mano o que usar la zona horaria de otro país, ya que continuamos usando la zona horaria de Chile pero con las modificaciones que el gobierno impuso.

La solución rápida es descargar este archivo “timezone” que modifiqué con las nuevas fechas, descomprimirlo y pisar el archivo /etc/localtime y en el directorio donde tengas los archivos de zona que generalmente se encuentran en /usr/share/zoneinfo/Chile/Continental.

Los pasos a seguir luego de descargar el archivo, son:

# zdump -v Chile/Continental|grep 2012

Al ejecutar el siguiente comando, deberias poder ver las fechas en las cuales se deberia cambiar la hora

# zdump -v /etc/localtime|grep 2012

Desempaqueta el archivo localtime.gz

# gunzip localtime.gz

Reemplazar el /etc/localtime y /usr/share/zoneinfo/Chile/Continental
por ese archivo

# cp localtime /etc/localtime

# cp localtime /usr/share/zoneinfo/Chile/Continental

Si /usr/share/zoneinfo/ no existe, deberia estar en
/usr/local/share/zoneinfo o en /usr/lib/ o algo parecido (buscar en /
el directorio “zoneinfo”).

Luego vuelve a ejecutar los dos comandos del “zdump” y deberian
aparecer las nuevas fechas de cambio de hora.

Para modificar el archivo de timezone seguí las instrucciones que escribió “Sabius” en el foro de CHW el año pasado:

Guia: Modificar tzdata, cambio/no cambio de hora Chile

Posts relacionados

Etiquetas: Documentacion · GNU/Linux · Interes general · Tips

15 respuestas hasta ahora ↓

  • 1
    socrates // Mar 11, 2012 a las 11:30 am

    Grande zerial :D excelente aporte!!

  • 2
    socrates // Mar 11, 2012 a las 12:04 pm

    pero no me funciono porq lo tengo sincronizado con ntp :(

  • 3
    Zerial // Mar 11, 2012 a las 12:08 pm

    socrates:

    en teoria el servidor ntp deberia tener la zona modificada. Contra que NTP estas sincronizando? Con ntp.shoa.cl no tuve problemas

  • 4
    socrates // Mar 11, 2012 a las 12:31 pm

    los camie a ntp.shoa.cl pero tampoco funciona, plop.
    ntpdate 200.27.106.116
    11 Mar 12:30:03 ntpdate[7885]: no server suitable for synchronization found

  • 5
    Zerial // Mar 11, 2012 a las 12:42 pm

    Eso va mas alla de la zona horaria. Es problema de comunicacion, intenta mas tarde o revisa q llegas a ese host:port

  • 6
    socrates // Mar 11, 2012 a las 12:58 pm

    Sip, eso haré, gracias por la ayuda, y felicitaciones por tu blog, estoy subscrito :D

    saludos!!

  • 7
    bAxTEr // Mar 12, 2012 a las 12:28 am

    Buena aporte viejo!

    :)

  • 8
    felipeh // Mar 12, 2012 a las 9:37 am

    solo una precision:
    debe ser:

    # cp localtime_2012 /etc/localtime

    # cp localtime_2012 /usr/share/zoneinfo/Chile/Continental

  • 9
    KMinamoto // Mar 12, 2012 a las 9:38 am

    Muchas gracias. Funcionó a la perfección ^_^!

  • 10
    jam // Mar 12, 2012 a las 5:05 pm

    Grax!

  • 11
    James // Mar 19, 2012 a las 10:07 am

    Zerial :
    efectue los cambios que indicas, al consultar la hora muestra la que debe ser… pero tengo varios cron críticos que se ejecutan uno hora despues de lo que esta fijado en el “cron”.

    ¿Por que?… cual es la hora que consulta el cron para ejecutar sus tareas ?

    Muchas Gracias

  • 12
    Zerial // Mar 19, 2012 a las 10:15 am

    James:

    Verifica con que usuarios se esta ejecutando cada tarea del cron. Si quieres, puedes modificar el cron y agregarle “TZ=timezone” antes del comando. No se si el crontab tendra alguna config para definir un “timezone” para sus tareas

  • 13
    James // Mar 19, 2012 a las 10:46 am

    Zerial :
    el user es “root”
    Gracias por todo

  • 14
    Deb // Abr 3, 2012 a las 8:46 pm

    De mucha utilidad, me saco un problema.

    Gracias

  • 15
    Alejandro Nova // Abr 4, 2012 a las 9:36 am

    Gracias, Zerial, por la solución a “la nueva forma de levantarse”. Espero pesadillas para quienes hagan mantenimiento a zoneinfo por todo el gobierno de Piñera.

Deja un Comentario