Welcome to TechNet Blogs Sign in | Join | Help

Linacre's Blog

Life is a journey, like bike riding...

News

  • La Nueva Eficiencia

    Newsletter de Seguridad

    MVP Program en LATAM

    Locations of visitors to this page

    Add to Technorati Favorites

    Delicious Guardalo en Delicious

    Blogalaxia

    Enhanced with Snapshots

Cambio de hora en Chile: parte 3 - Recomendaciones técnicas

Clock_WHM.jpgPrimera recomendación, esto es para administradores y debe ser leído atentamente antes de hacerlo. No hagan esto en casa niños :)

Primera salvedad el horario de verano se extiende por lo tanto el cambio que ocurría este sábado ocurrirá el:

Fin del horario de verano: último sábado de marzo a las 23:59:59 (29 de marzo de 2008)

Dado que este es un cambio transitorio, los sistemas operativos Windows no reflejan este cambio, es decir, la nueva fecha de finalización del horario de verano.

Dado que el proceso de generación de actualizaciones es un proceso que pasa por un testing exhaustivo y la premura de este cambio, dado que el decreto recién se firmó el 27 de febrero, no había tiempo suficiente de hacerlo.

Para aminorar los posibles problemas son las siguientes recomendaciones.

Recomendaciones generales para usuarios de Windows:

1. A fin de poder actualizar los sistemas operativos Windows para computadores personales, recomendamos a los administradores cambiar la información de zona horaria para Chile almacenada en el registro con el objetivo de que refleje la extensión del horario de verano. Lea la sección “Cómo actualizar sistemas operativos para computadores de escritorio y servidores Windows” del documento adjunto, para obtener detalles sobre los pasos recomendados.

2. No ajuste el reloj del equipo en forma manual. Si lo hace, puede ocasionar problemas en su entorno y esta medida no es recomendada ni respaldada por Microsoft.

3. Antes de aplicar los cambios en Sistemas operativos Windows para que reflejen la nueva fecha de finalización del horario de verano en Chile, tenga en consideración los posibles problemas que afectarán a Microsoft Office Outlook y Exchange Server. Lea las secciones de “Impacto para clientes de Outlook en Chile” para obtener más detalles en el documento adjunto.

4. Comuníquese con Soporte de Microsoft al 800 330 600 antes de implementar cualquier modificación si no está seguro acerca de los pasos que debe seguir para preparase para los cambios de horario de verano en Chile.

Ahora veamos Cómo Actualizar los sistemas operativos para servidores y computadores de Escritorio

Todo esto esta basado en el artículo:

914387 – Cómo configurar el horario de verano para sistemas operativos Microsoft Windows http://support.microsoft.com/default.aspx?scid=kb;EN-US;914387

Ojo que la versión de este KB aún no contiene la información de las nuevas configuraciones horarias de Chile, así que siga leyendo el siguiente paso a paso...

1. Cree un archivo de registro que contenga las nuevas configuraciones de horario de verano para Chile siguiendo los pasos a continuación:

1.1 Haga clic en Inicio, luego en Ejecutar, escriba notepad.exe y luego haga clic en Aceptar.

1.2 Copie la siguiente información de registro y luego péguela en el documento de Bloc de notas:

Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Pacific SA Standard Time] "TZI"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,03,00,06,00,05,00,17,00,3b,\ 00,3b,00,00,00,00,00,0a,00,06,00,02,00,17,00,3b,00,3b,00,00,00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Pacific SA Standard Time\Dynamic DST] "FirstEntry"=dword:000007d7 "LastEntry"=dword:000007d8 "2008"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,03,00,06,00,05,00,17,00,3b,\ 00,3b,00,00,00,00,00,0a,00,06,00,02,00,17,00,3b,00,3b,00,00,00 "2007"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,03,00,06,00,02,00,17,00,3b,\ 00,3b,00,e7,03,00,00,0a,00,06,00,02,00,17,00,3b,00,3b,00,e7,03

1.3 En el menú Archivo, haga clic en Guardar como.

1.4 Seleccione un destino y luego escriba TZupdate.reg en el cuadro de nombre de Archivo. 

1.5 En el cuadro de Guardar como tipo, haga clic en Todos los archivos y luego en Guardar.

2. Importe esta clave de registro a los equipos de destino al hacer doble clic en TZupdate.reg y hacer clic en ‘Sí’ cuando le pregunten. Todos los equipos (clientes y servidores) deben actualizarse con esta información de registro.

3. Para poder implementar estos cambios de zona horaria en un entorno corporativo, puede usar un programa de inicio como se describe en la sesión “Implementar el archivo de registro con la nueva información de horario de verano usando una Política de grupo” abajo.

Nota: las configuraciones de registro antes mencionadas contienen la siguiente información para la zona horaria “(GMT-04:00) Santiago”:

  • El horario de verano comienza: el segundo sábado de octubre a las 23:59:59 hora local estándar
  • El horario de verano finaliza: el último sábado de marzo a las 23:59:59 hora de verano local.

Ahora esto no termina ya que tenemos que asegurarnos que quede correcto en todas partes....

Use un script para volver a cargar la clave de registro TimeZoneInformation

La información de zona horaria está almacenada en dos ubicaciones. Debemos asegurarnos de actualizar ambas ubicaciones. La importación del archivo TZupdate.reg actualiza la base de datos de zona horaria en el registro. Luego, debe crear un programa fuente que actualice la clave de registro de información de zona horaria en CurrentControlSet. Puede implementar este programa fuente al usar una Política de grupo u otro mecanismo de implementación.

El script identifica la zona horaria actual del computador del cliente y luego vuelve a cargar la clave de registro de TimeZoneInformation con la información actualizada de la base de datos de zona horaria. Después, el programa fuente escribe un evento en el registro Aplicación del computador del cliente donde se ejecutó el programa fuente.

Para crear el archivo de script, siga estos pasos:

1. Haga clic en Inicio, luego en Ejecutar, escriba notepad.exe y presione Entrar

2. Copie el siguiente código y luego péguelo en el documento de Bloc de notas.
Set objSh = CreateObject("WScript.Shell")'Get the StandardName key of the current time zone

szStandardName = objSh.RegRead("HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\StandardName")

'Enumerate the subkeys in the time zone database

const HKEY_LOCAL_MACHINE = &H80000002

Set objReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")

szTzsKeyPath = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones"

objReg.EnumKey HKEY_LOCAL_MACHINE, szTzsKeyPath, arrTzSubKeys

'Step through the time zones to find the matching Standard Name

szTzKey = "<Unknown>"

For Each subkey In arrTzSubKeys

    If (objSh.RegRead("HKLM\" & szTzsKeyPath & "\" & subkey & "\Std") = szStandardName) Then

        'Found matching StandardName, now store this time zone key name

        szTzKey = subkey

    End If

Next

If szTzKey = "<Unknown>" Then

       'Write entry to the Application event log stating that the update has failed to execute

       objSh.LogEvent 1, "DST 2007 Registry Update and Refresh failed to execute on this computer.  Time zones failed to enumerate properly or matching time zone not found."

       Wscript.Quit 0

End If

Dim process, processid, result, strUpdateCommand

Set process = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2:Win32_process")

'Add time change privilege to the process object

process.Security_.Privileges.AddAsString "SeSystemTimePrivilege",True

strUpdateCommand = "control.exe timedate.cpl,,/Z" & szTzKey

'Launch control.exe to refresh time zone information using the TZ key name obtained above

result = process.create(strUpdateCommand,Null,Null,processid)

If result <> 0 Then

       objSh.LogEvent 1, "DST 2007 Registry Update and Refresh failed to execute on this computer.  Unable to refresh the Timezone database."

    Wscript.Quit 0

End If

'Get current display name of refreshed time zone

szCurrDispName = objSh.RegRead("HKLM\" & szTzsKeyPath & "\" & szTzKey & "\Display")

'Write entry to the Application event log stating that the update has executed

objSh.LogEvent 4, "DST 2007 Registry Update and Refresh has been executed on this computer." & chr(13) & chr(10) & chr(13) & chr(10) & "Current time zone is: " & szCurrDispName & "."

3. en el menú Archivo, haga clic en Guardar como

4. Seleccione un destino y luego escriba “refreshTZinfo.vbs” en el cuadro de nombre de Archivo.

5. En el cuadro Guardar como tipo, haga clic en Todos los archivos y luego en Guardar.

Ojo que estos son sólo ejemplos y tienen que probarlos ANTES de implementarlos.

Ahora la última parte que es implementarlo en una política de grupo.

Implementar modificaciones de horario de verano usando una Política de grupo

1. Haga clic en Inicio, luego en Ejecutar, escriba notepad.exe y luego presione Entrar. 

2. Copie el siguiente código y péguelo en el documento de Bloc de notas.

@echo off

regedit /s \\contoso.com\NETLOGON\TZupdate.reg

ver |find /i "6.0">nul

IF %errorlevel% EQU 0 GOTO end

cscript \\contoso.com\NETLOGON\refreshTZinfo.vbs

:end

Nota: debe reemplazar la notación \\contoso.com arriba por el nombre de dominio DNS real para su dominio de Active Directory.

3. En el menú Archivo, haga clic en Guardar como.

4. DST2008Update.cmd en el cuadro de nombre de Archivo. 

5. En el cuadro Guardar como tipo, haga clic en Todos los archivos y luego en Guardar. 

6. Copie los siguientes archivos a la carpeta compartida Netlogon del controlador de dominio que se desempeña como emulador PDC en el dominio:
- TZupdate.reg 
- DST2008Update.cmd
- refreshTZinfo.vbs

7. Espere hasta que se produzca la replicación en Active Directory. También espere hasta que los archivos y las carpetas en la carpeta compartida de volumen del sistema (SYSVOL) se repliquen en los controladores de dominio en el dominio. 

8. Haga clic en Inicio, luego en Ejecutar, escriba control admintools y luego haga clic en Aceptar. 

9. Haga doble clic en Usuarios y computadores de Active Directory

10. Seleccione una Unidad organizacional (OU, Organizacional Unit) que contenga los computadores en los que desea aplicar este script. En este ejemplo, usaremos una OU denominada DST-COMPUTERS. Además, en este ejemplo asumimos que esta OU contiene cuentas de computadores.

11. Haga clic con el botón derecho en la OU DST-COMPUTERS y luego haga clic en Propiedades. 

12. Haga clic en la ficha Política de grupo, luego en Nueva, escriba DST Registry Update y luego presione Entrar. 

13. Haga clic en Editar. Se inicia la herramienta Editor de objetos de políticas de grupo.

14. Expanda Configuración del equipo, expanda Configuración de Windows y haga clic en Scripts (Inicio o Apagado). 

15. Haga doble clic en Inicio y luego en Agregar. 

16. En el cuadro Nombre de script, escriba la ruta de convención de nombre universal (UNC, universal naming convention) del archivo DST2008Update.cmd que está ubicado en la carpeta compartida Netlogon. Por ejemplo, escriba \\contoso.com\NETLOGON\DST2008Update.cmd

17. Haga clic en Aceptar dos veces. 

Hasta aquí con con lo que tienen que hacer los administradores. Pero ojo que:

  • Las instrucciones proporcionadas arriba se pueden aplicar en sistemas operativos Windows 2000, Windows XP y Windows Server 2003; sin embargo, es posible que después de seguir estas instrucciones en un sistema operativo Windows 2003 la zona horaria actual no se actualice. En este caso, quizás deba reiniciar el equipo o ejecutar el script refreshTZinfo.vbs manualmente.
  • Las instrucciones de arriba no se pueden aplicar en sistemas operativos Windows Vista.

Mañana revisaremos las consecuencias del cambio para Outlook y Exchange, en cualquier caso toda la documentación adjunta:

Cualquier duda publíquenla aquí mismo.

Saludos, Christian.-

Posted: Tuesday, March 04, 2008 7:26 PM by linacre

Comments

Alejandro[FV] said:

hola christian, bueno el articulo, muy bien explicado y practico, pero me queda una duda super trivial quizas, por que NO cambiar la hora en forma manual en los equipos personales?.

ahh y que pasa con Vista?

# March 4, 2008 8:49 PM

Germain said:

Cristian:

Muy bien explicado, consulta: Tu estas modificando la Zona Horaria de Santiago, esta zona va a tener como definiciòn el cambio el ultimo sabado de Marzo, pero que sucede si el proximo año el gobierno decide volver antiguo horario de verano (cambio el 2 sabado de marzo), se debera volver a ejecutar un script que vuelva a cambiar la definiciòn del cambio del horario de verano?, porque no mejor cear una nueva zona horaria de forma transitoria?

# March 5, 2008 8:16 AM

linacre said:

@Alejandro,

la razon para no cambiar la hora de formal manual es porque se calcula en base a un offset que contiene el GMT. El calculo es:

GMT + TimeZone (positivo o negativo) + DST (1 hora positivo en nuestro caso)

@Germain,

de hecho el script es válido sólo por las próximas 3 semanas, de hecho a fines de Marzo publicaremos el procedimiento de rollback necesario.

Saludos, Christian.-

# March 5, 2008 9:53 AM

Cristian said:

Hola Christian, sabes me aparece este error solo en los servidores 2003, al ejecutar el archivo CMD, que tengo configurado al inicio, mediante una GPO o en forma manual.

De antemano muchas gracias...

CMD.EXE was started with the above path as the current directory.

UNC paths are not supported.  Defaulting to Windows directory.

Microsoft (R) Windows Script Host Version 5.6

Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.

# March 5, 2008 11:53 PM

Cristian said:

Hola Christian, sabes me aparece este error solo en los servidores 2003, al ejecutar el archivo CMD, que tengo configurado al inicio, mediante una GPO o en forma manual.

De antemano muchas gracias...

CMD.EXE was started with the above path as the current directory.

UNC paths are not supported.  Defaulting to Windows directory.

Microsoft (R) Windows Script Host Version 5.6

Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.

# March 5, 2008 11:54 PM

Pablo Campos said:

# March 6, 2008 7:59 AM

Cristian said:

Pablo, gracias pero ya habia revisado ese articulo, sin embargo mi preocupacion es que tengo aprox. 80 servidores a los que tengo que aplicar este cambio.

Saludos.

# March 6, 2008 8:41 AM

Germain said:

Yo opte por crear una zona horaria y aplicar esta a los equipos y estaciones, ya la probe y resulto OK, si gustan te envio los archivos.

# March 6, 2008 9:03 AM

Cristian said:

Muchas gracias Germain, pero tengo servicios criticos, por ende no deseo correr riesgos innecesarios.

Agradesco enormemente tu respuesta.

Saludos.

# March 6, 2008 9:21 AM

jandres said:

Yo tengo un con win 2003 + estaciones de trabajo con xp,y me preocupa el tema porque todavia no veo una clara solucion.

# March 6, 2008 11:05 AM

Guido said:

Linacre, Muy bueno.

¿Que sucede con los smartphones, Windows Mobile 5.0 y 6.0?

# March 6, 2008 12:39 PM

Juan said:

Que resultado da si tan solo quitamos el tilde en "Cambiar la hora automáticamente según el horario de verano" ?

# March 6, 2008 12:54 PM

Andres said:

Excelente viejo, afortunadamente íbamos por el mismo camino.

Una consulta... sabes qué pasa con Windows Vista ?

Entiendo que el formato del registro es diferente.

Bastaría con generar una nueva zona horaria en Vista configurada adecuadamente ?

# March 6, 2008 1:24 PM

Fernando said:

que pasa con VISTA? a mi no me funciona en mi equipo... probé lo mismo en XP y ningún problema...

# March 6, 2008 1:25 PM

Germain said:

Con Vista hay que optar por cambiar a otra zona horaria GMT-3 . Adjunto link oficial de MS http://www.microsoft.com/chile/cambiodehora/pmf.aspx

# March 6, 2008 4:05 PM

Germain said:

Si a alguien le sirve de pauta, yo aplique la creaciòn de una nueva Zona Horaria, lo aplique sobre un dominio 2000, con miembros 2003 y clientes XP, todo ha funcionado correctamente y se han realizado los cambios a la nueva zona horaria.

# March 6, 2008 4:09 PM

linacre said:

@Fernando,

tal como dice la pauta técnica estas instrucciones no aplican a Windows Vista.

La recomendación de cambio de zona horaria manualmente a Brasilia GMT -3, está documentada en www.microsoft.com/chile/cambiodehora

De igual forma lo pondré con más detalle aquí mismo.

Saludos, Christian.-

# March 6, 2008 4:13 PM

GustavoG said:

Gente,

Ojo que el refreshTZinfo.vbs falla el refrescar la zona en sistemas operativos en castellano

Dado que la zona del .reg esta en ingles. no puede encontrar la zona en castellano

La zona en ingles importada por el .reg es Pacific SA Standard Time y la zona en castellano es

"Dlt"="Hora de ver. del Pacífico SA"

"Std"="Hora est. del Pacífico SA"

para refrescar la zona importada ejecutar en ves del vbs

CONTROL.EXE TIMEDATE.CPL,,/Z Pacific SA Standard Time

Este ultimo refresca la zona importada en ingles.

# March 7, 2008 8:38 AM

Cbocaz said:

Germain, Me interesa tu propuesta, es posible que me puedas enviar los archivos?... un duda ante todo, los server son ingles y los clientes español??

# March 7, 2008 8:50 AM

Fernando said:

muy explicativo la solucion pero como dicen algunos, que pasa si solo desmarco la opcion de cambio hora automatico para el horario de verano, en ese caso no se actualiza el horario sino es en forma manual, si alguien le pasa por favor responda

# March 7, 2008 11:55 AM

linacre said:

@Fernando,

si desmarcas la opción de hora vas a tener problemas por la forma como se calcula la hora. Porque funciona en base a un offset.

Es decir, se usa la hora UTC (similar a GMT) y se calcula hora en en base a ls siguiente ecuación:

Hora: Hora UTC + Zona Horaria (positivo o negativo) + DST

Donde DST es Daylight Saving Time, es decir, la hora de verano.

Por ejemplo, si tenemos las 15:00 hrs en UTC, la hora sería hoy:

UTC=15:00

ZonaHoraria=-4

DST=1

Hora final: 15:00 - 4:00 + 1:00 = 12:00

Esto es importante y por eso la recomendación es cambiar a una zona horaria que sea GMT-3 como “(GMT -3:00) Brasilia”

Saludos, Christian.-

# March 7, 2008 1:15 PM

Cristian said:

Como ya preguntaron, hay alguna diferencia en correr esto para servidores en español o ingles??

Saludos,

Cristian

# March 7, 2008 5:07 PM

M@rTIn Xtreme said:

En virtud de la extensi&#243;n del horario de verano en Chile, hemos considerado el siguiente proceso

# March 7, 2008 8:07 PM

Andrea said:

Gracias Cristian por la info. Mi pregunta es, que pasa para el próximo año si deciden volver a lo anterior, osea segundo sábado de marzo? en qué afecta correr este script. Habrá otro luego?

Saludos.

# March 10, 2008 11:33 AM

linacre said:

@Andrea,

el cambio o vuelta atrás tendrás que hacerlo a fines de Marzo. Lo cual te dejará nuevamente en la zona horaria GMT-4:00 Santiago, lo que dejará en regimen normal la zona.

Si hay otros cambios del estilo habrá que volver a los procedimientos manuales.

cualquier duda avísame.

saludos, Christian.-

# March 10, 2008 2:15 PM

TrackBack said:

# March 10, 2008 10:27 PM

CArlos said:

Necesito hacer el rollBack no hay documentacion al respecto ya que he aplicado el script sobre una maquina que ya tenia la hora adelantada y esto afecto adelantando una hora mas segun creo fue la aplicación de este script la que provoco adelantar una hora mas..

quien tiene info del rollback necesario.

saludos

# March 11, 2008 12:59 PM

CArlos said:

NECESITO EL ROLLBACK PLEASE

por que aplique el cambio pero me sumo 1 hora osea cuando es horario verano EJ: 2:00 y invierno 1:00 cuando aplique el script cambio a 3:00 .. asi que necesito el archivo que repara o saca la instalacion del registro

saludos

Atte.Carlos

# March 11, 2008 1:40 PM

linacre said:

@Carlos

el update no necesita rollback, si estas teniendo problemas te recomiendo leer el KB914397 donde esta la información de la zona GMT -4:00 Santiago.

Saludos, Christian.-

# March 14, 2008 9:35 AM

Linacre's Blog said:

Este s&#225;bado 29 de Marzo a las 23:59:59 hrs. volveremos al horario normal de invierno, es decir,

# March 27, 2008 12:40 PM

Carlos said:

Si te entiendo pero para el proximo año que sucedera?

el equipo no cambiara la hora hasta que sea el dia que se señalo para cambiar la hora.

leere el documento que me señalas.

saludos

Atte.

Carlos

# April 17, 2008 2:43 PM
Leave a Comment

(required) 

(required) 

(optional)

(required) 

  
Enter Code Here: Required

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Page view tracker