📜 ⬆️ ⬇️

Translation time October 26, 2014 or hit by work on carelessness

The Russian State Duma adopted in July a bill on the return to winter time, as well as on the establishment of a new system of time zones. As a result, on October 26, 2014, in most regions of Russia, the time will be transferred back an hour ago, and 11 time zones will appear in the country instead of 9 existing now, and their borders will change.

If for ordinary citizens it is just an extra hour to sleep, then for the system administrator this moment is creepy. In this article I will discuss the problem of updating time zones for Windows XP, Windows Server 2003 and email systems based on MS Exchange 2003 with the native Outlook client. It’s no secret that these systems have not gone away, and although XP and Exchange 2003 have been removed from all types of support, including even prime support, they are successfully used in both small and large organizations and the event connected with the transfer of hands an hour ago is relevant to them. more than ever. It is also relevant for the reason that there are not and will not be official updates for systems removed from support of Microsoft. Since I had to prepare a solution for these systems, conduct some tests, etc., so I decided to share the results of my work with my colleagues. So, who cares, welcome under cat. It will be interesting.

Some general information


With the adoption of the Federal Law of the Russian Federation of 21.07.2014. No. 248- “On Amendments to the Federal Law“ On the Calculation of Time ”on the territory of the Russian Federation on October 26, 2014, the hours are transferred and the corresponding time zones and time values ​​are set. As a result, most regions of Russia will switch back 1 hour, while creating 3 new time zones and combining 2 current time zones into one new one. The configuration of time zones will change - a number of regions will move to neighboring or new zones. The transition to summer and winter time throughout the year will still not be implemented.
On September 23, 2014, Microsoft released a cumulative update (kb2998527) for Windows operating systems to account for current changes in time order and posted it for download on the Microsoft Download Center ( https://support2.microsoft.com/kb/2998527 / ) and Windows Update Automatic Update ( https://catalog.update.microsoft.com ). This update contains the latest changes adopted in Russia. In addition, a new time zone for the Republic of Belarus will be created in the Windows operating systems.

The change in time will occur on October 26, 2014 at 2:00 local time. In this regard, in Windows operating systems, these changes will be displayed at the time of changing the countdown of the clock following 1h: 59m: 59s.
')

what will happen on October 26, 2014 at 2:00 local time


Time zones in Russia will change and quite significantly. Picture from Lenta.ru website


As a result, we expect the next fun life, namely.

Changes to existing time zones

after you install update KB29985527 on your operating systems, the following will change in the existing time zones specified in the systems

New time zone name
New Display Name
Current time zone name
Current Display Name
one
Russia Time Zone 1
(UTC + 02: 00) Kaliningrad (RTZ 1)
Kaliningrad Standard Time
(UTC + 03: 00) Kaliningrad, Minsk
2
Russia Time Zone 2
(UTC + 03: 00) Moscow, St. Petersburg, Volgograd (RTZ 2)
Russian Standard Time
(UTC + 04: 00) Moscow, St. Petersburg, Volgograd
3
Russia Time Zone 4
(UTC + 05: 00) Ekaterinburg (RTZ 4)
Ekaterinburg Standard Time
(UTC + 06: 00) Ekaterinburg
four
Russia Time Zone 5
(UTC + 06: 00) Novosibirsk (RTZ 5)
North Central Asia Standard Time
(UTC + 07: 00) Novosibirsk
five
Russia Time Zone 6
(UTC + 07: 00) Krasnoyarsk (RTZ 6)
North Asia Standard Time
(UTC + 08: 00) Krasnoyarsk
6
Russia Time Zone 7
(UTC + 08: 00) Irkutsk (RTZ 7)
North Asia East Standard Time
(UTC + 09: 00) Irkutsk
7
Russia Time Zone 8
(UTC + 09: 00) Yakutsk (RTZ 8)
Yakutsk Standard Time
(UTC + 10:00) Yakutsk

On October 26, 2014, at 2 am local time, user PC watches located in these time zones will automatically be switched to winter time. But not without exception. Exceptions are:


New time zones


New time zone name
New Display Name
Current time zone name
Current Display Name
one
Russia Time Zone 3
(UTC + 04: 00) Izhevsk, Samara (RTZ 3)
Missing
Missing
2
Russia Time Zone 10
(UTC + 11: 00) Chokurdakh (RTZ 10)
Missing
Missing
3
Russia Time Zone 11
(UTC + 12: 00) Anadyr, Petropavlovsk-Kamchatsky (RTZ 11)
Missing
Missing

User computers located in these time zones must be manually configured to the appropriate time zone. Otherwise, from October 26, 2014 from 2 am local time, the time display on these computers will be incorrect.

Combining time zones


New time zone name
New Display Name
Current time zone name
Current Display Name
one
Russia Time Zone 9
(UTC + 10: 00) Vladivostok, Magadan (RTZ 9)
Vladivostok Standard Time
(UTC + 11: 00) Vladivostok
Magadan Standard Time
(UTC + 12:00) Magadan

For computers configured on the “Vladivostok Standard Time” time zone, the time zone will change automatically. For computers configured with the “Magadan Standard Time” time zone, only the time adjustment will occur. Computers in this time zone must be manually switched to the new “Russia Time Zone 9” time zone, as the main time zone after October 26, 2014.
Exceptions for computers configured on “Magadan Standard Time” are:


Expected problems


Well, as without it:

Getting updated


Microsoft Windows XP Professional Update

For XP, we have two options for updating:

Turning XP into Embedded
The transformation begins:

After the modification to XP, you can install the kb2998527 patch from the Embedded version. You can take it from, for example, the Windows Update directory on the link at the very beginning.

After the installation is complete, you must manually change the time zone. For Moscow time, it will be necessary +04: 00 to change Abudabi to +03: 00 RTZ 2. Do not forget to check that the checkbox is set to “Automatically switch to summer time and back”. Otherwise, the time translation will be incorrect. Therefore, if your OS is older than 2011 and this checkbox is cleared on it, it will not be returned after installing the patch. Why did the MS do this? I do not understand.

After installing the patch from Embedded, you can delete new values ​​in the WPA registry key. You can delete them before reboot. After rebooting the OS, they will not be deleted. Unfortunately, I can not say what this registry branch can also affect the installation of the patch for Embedded.

Making changes to the registry directly
The second option to change the time zones on Windows XP can be direct editing of the registry. Conveniently, when you have a bunch of XP in, for example, a domain that requires updating. Then create .reg files and distribute them through group policy. To do this, you need to compile a reference XP (for example, on a virtual machine), turn it into Embedded using the above method, install the kb2998527 patch, set the correct current time zone and unload two registry keys:

Save them under the names (for ease of further understanding) 3.reg and 4.reg. Also create two files 1.reg and 2.reg with the following contents respectively:
[-HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Time Zones] - deletes the base of time zones
[-HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ TimeZoneInformation] - deletes the value of the current time zone

As a result, we will have four files for distribution: 1.reg, 2.reg, 3.reg and 4.reg. In such a sequence, they will need to be applied. By the way, in this way we get two bonuses:


ADD all parameters from files 1.reg, 2.reg, 3.reg and 4.reg can be placed in one .reg file. It will be more convenient.

GPO Distribution
Since in 2003-XP, group policy preferences are quite rare; we will make corrections in the registry using a simple script. To do this, create a file with the extension .cmd as follows:
@echo off
IF EXIST c:\windows\ok.file (exit) ELSE (regedit /s \\contoso.internal\SYSVOL\contoso.internal\scripts\1.reg & regedit /s \\contoso.internal\SYSVOL\contoso.internal\scripts\2.reg & regedit /s \\contoso.internal\SYSVOL\contoso.internal\scripts\3.reg & regedit /s \\contoso.internal\SYSVOL\contoso.internal\scripts\4.reg & echo. 2>c:\windows\ok.file & tzchange.exe /c “Russian Standard Time”)

The script does the following: check whether there is an ok.file file in the Windows folder, and if it exists, it quits. The script has already been run. If the file does not exist, the values ​​from the .reg files are applied in the specified sequence. Remember that .reg files must be accessible via a network path. After applying the ok.file file in the Windows directory, the current time zone is assigned, because After a change in the registry, this will not happen automatically. Alternatively, instead of tzchange, you can just reboot the PC (or give the command shutdown -r). How someone like it.

It remains to make a group policy. Go to the group policy editor. Expand Computer Configuration - Windows Settings - Scripts. On the left side of the policy editing window, double-click on Startup. In the window for editing the properties of the Startup item, click the Add button and add the .cmd file created earlier to the network path. Click OK twice and close the Group Policy Editor. Apply the created policy to the organizational unit containing the target PC accounts. After rebooting the target PC, the policy will apply.

Microsoft Windows 2003 Server Update

For Microsoft Windows 2003, update kb2998527 has been released. Therefore, the main problem is to translate the time zone where necessary. It is clear that this can be done manually. As well as deleting registry values ​​and adding necessary ones (for example, in the same way as for XP). To do this, on the reference machine with the update installed and the correct time zone, you must unload the registry branch HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ TimeZoneInformation and save it as 2.reg. Then create a file 1.reg with the following contents
[-HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ TimeZoneInformation].
Apply the above method through Group Policy to Windows 2003 servers in the specified sequence. First, file 1, then 2. And then to choose from or the command to change the current time zone or just reboot.

Updating tasks in the Outlook 2000-2007 calendar

And the last problem in the context of obsolete Microsoft systems, which we had to face when testing switching to winter time, is that in tasks that were created before the transition to winter time for dates later on October 26, the time went an hour ago. In other words, what was planned for 9 am became after the installation of the fix kb2998527 on dates later on October 26 is scheduled for 8 am. What is wrong. By the way, when testing on XP where changes were applied to the registry directly (without "turning the OS" into Embedded), the calendars did not "go." Where there was an update, everything is as it should - left.

For this, Microsoft has a utility. In fact, there are two of them, one runs on the client, the other directly on the Exchange server. But since what is performed on the Exchange server can break it (and the MS hints at this) is safer to run around the machines, if that, than to conjure over the restoration of the base. Therefore, I will consider only the utility that runs on the client side. Also, I will not consider updating calendars in service mailboxes and public folders. All this is discussed in the MS article (it will be lower) and the attitude to the essence of this post is somewhat indirect.

Calendars "go" on almost all operating systems after changing the time zone with the Outlook version from 2000 to 2007. Why practically, because it's worth checking out. Maybe you are lucky and the tasks will remain in place. For example, in my experiments, the calendars in Outlook 2007 remained correct in Windows 7. But the MS’s official position is such that the indicated versions of Outlook “go”. Do not require action version of Outlook 2010 and 2013. Everything is always normal.

So, in order to fix the work of the “traveling” tasks in the calendars, we need to go to the site http://support2.microsoft.com/kb/930879/ru and download either the 32-bit or 64-bit version of the time zone data updater package With this there are no problems. The problem is in the mass deployment and in the mass execution. Officially, the MC says literally the following "set and run". What is not always convenient. Therefore, a task appeared before me to translate all this into group policies.

As a result, it turned out that the calendar repair tool, OutlookTimeZoneMove.exe, is nothing more than an archive that can be picked up with the same WinRAR. What was done. The TZMove.msi file was extracted from the OutlookTimeZoneMove.exe file. Unfortunately, the versions for x64 and x86 are called the same, so do not forget to rename TZMove.msi to TZMove_32.msi and TZMove_64.msi, respectively.

After that, these files must be placed on a network ball that is available for users of the domain to read and create a group policy for distribution. You will have to create two group policies and configure them to run on the OS with its own bit depth (for example, through WMI filters), but these settings are beyond the scope of this article.

After creating a group policy, open it for editing. Expand User Configuration - Software Settings. Click on the Software installation item, select the New - Package context menu item and add the TZMove.msi file via the network path. Click OK. In the right part of the policy editing window, double-click the created package and enter its properties. Go to the Deployment tab and select the distribution type switch in the Assignrd and the switch on the Install this application at logon item.

Click OK to close the group policy editor. Apply the created policy to the organizational unit containing the target user accounts. After the PC is restarted and the target user logs in, the task adjustment control in the Outlook calendar will be deployed to the target PC for the target user.

And we can only run this tool, for forcing the user to do it himself is rather hard. The difficulty, at first glance, lies in the fact that the remedy is installed in three variants of the path to the executable file:


It would seem that this is a problem. But in fact, everything turned out to be simple. Create a file with a .cmd extension and add the following content there:
@echo off
IF EXIST "%userprofile%\ok1.file" (exit) ELSE ("%PROGRAMFILES%\Microsoft Office\Office12\Office Outlook Time Zone Data Update Tool\tzmove.exe" /quiet & “%PROGRAMFILES(x86)%\Microsoft Office\Office12\Office Outlook Time Zone Data Update Tool\tzmove.exe” /quiet & “%PROGRAMFILES%\Microsoft Office\Office14\Time Zone Data Update Tool for Microsoft Outlook\tzmove.exe” /quiet echo. 2>"%userprofile%\ok1.file")

The script will check if there is an ok1.file file in the user's profile folder and if it exists, the script exits (it has already been executed). If there is no file, then the script tries to perform in “quiet” mode a tool for adjusting tasks in the user's calendar in all three possible ways. One and work. Not the path of the Jedi, but it is quickly implemented. Then it creates the file ok1.file and exits.

After creating a group policy, open it for editing. Expand User Configuration - Windows Settings - Scripts. In the left part of the policy editing window, double-click Logon. In the window for editing the properties of the Logon item, click the Add button and add the .cmd file created earlier by the network path.
Click OK twice and close the Group Policy Editor. Apply the created policy to the organizational unit containing the target user accounts.

After rebooting the target PC, the target user login will be made a “silent” (not requiring user interaction) adjustment of tasks in the Outlook calendar.

That's all I wanted to tell. I hope this helps those who are faced with a similar problem. I will be glad to answer questions and comments.

Bonus for those who read to the end:
if you don’t know whether the checkbox was installed or cleared on OS 2003 and XP where the fix will be installed, simply delete one registry value by distributing the .reg file with the following contents:
[HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ TimeZoneInformation]
“DisableAutoDaylightTimeSet” = -

Source: https://habr.com/ru/post/239827/


All Articles