In October 2011 Russia ceased using of Daylight Savings Time (DST) and kept Summer time forever. Nine time zones around the territory were implemented in a range from UTC+3 to UTC+12. Moscow local time became UTC+4. Those changes are described in my previous post: https://www.novell.com/communities/coolsolutions/how-implement-lastest-time-zone-changes-russia-netware/
In 2014, the latest time zone changes in Russia are established by a Federal Law #248-FZ that was published in July 2014 (see http://www.rg.ru/2014/07/25/vremiya-dok.html). The law declares shifting of local time in most regions 1 hour behind, closer to UTC. Number of time zones increases from nine to eleven. The offset range is from UTC+2 to UTC+12. Moscow local time will be UTC+3 all year round. Time zone changes are active since the 26th Oct 2014 2:00 local time.
Since Novell NetWare lifecycle is in Extended Support phase, it is not likely the Time Zone updates will be issued for NetWare.
As for Java, Oracle has issued JRE Time Zone patch “tzupdater-1_4_6-2014f” that contains Time Zone changes for Russia. Actually, any TZUpdater of that version or later is suitable.
As you know, erroneous setting of UTC time to the past causes eDirectory Synthetic Time error. That is why you should keep UTC time on NetWare continuous while implementing time zone settings. This is crucial for eDirectory health.
Please keep in mind that UTC time in NetWare is calculated based on the local time and time zone information (zone offset and DST offset):
UTC = local time + time zone offset – daylight savings time offset
For example, at 10:00am of Moscow local time (Time Zone = MSK-4) the equation would look like the following:
Before the 26th Oct 2014, TZ = MSK-4: UTC = 10:00 + (-4) – 0 = 6:00
After the 26th Oct 2014, TZ = MSK-3: UTC = 9:00 + (-3) – 0 = 6:00
Because on the 26th Oct 2014 you would have to change two items in the right-hand side of the equation (Local Time and Time Zone Offset), there is no way to make manual re-configuration of Time Zone “on-the-fly” and keep UTC time continuous while the NetWare OS is running.
The safe way to tackle this, is to make changes in offline mode.
Changing Time Zone configuration on the NetWare OS
An approach described below provides a safe way to change TZ settings on NetWare. It involves server reboot and is suitable for physical or fully virtualized NetWare. A minor drawback is that the time zone changes are implemented not momentary and not at the exact moment (26th Oct 2:00am). Therefore some servers will be running incorrect local time for a while. That is why it should be done during off-work hours on weekend.
- Enter the console command TIME. Note the result:
- Modify AUTOEXEC.NCF.
SET Daylight Savings Time Offset = 0:00:00
SET Start Of Daylight Savings Time =
SET End Of Daylight Savings Time =
REM SET Time Zone = NET-4
SET Time Zone = NET-3
Time Zone format is well described on Novell support site (see https://support.novell.com/techcenter/articles/ana19931101.html).
Time zone abbreviations can be any abbreviation as you prefer. As for the number after the minus sign, you should decrease it by 1 in most Russian time zones. For example, in Moscow region the Time Zone variable is changing from NET-4 to NET-3.
- Use the command RESET SERVER to reboot the server. At the beginning of boot up process call BIOS Setup utility by pressing a dedicated button (it depends on the hardware model and could be <Del>, <F2>, <F10>, etc).
- Change hardware clock to the new local time (set hardware clock 1 hour back).
- Boot up the server. Enter the TIME command and ensure that:
Time Zone string has changed,
Summer time (DST) is set to OFF,
UTC time remains continuous,
The local time has stepped 1 hour back (see picture below).
At this step, Time Zone configuration for NetWare has complete.
Updating Time Zone configuration in JRE on NetWare OS
The procedure is described in details in my previous post https://www.novell.com/communities/coolsolutions/how-implement-lastest-time-zone-changes-russia-netware/.
Also, you can find there a brief explanation of how JRE works with Time Zone.
You need TZupdater version 1.4.6 (2014f) or later.
- Download TZupdater from the Oracle site. Go to the URL http://www.oracle.com/technetwork/java/javase/downloads/
and select the link “Java Time Zone Updater Tool”.
- Copy TZupdater ZIP file to a temporary directory on the NetWare server (for example sys:\tmp). Unzip it with the console command:
unzip -j sys:\tmp\tzupdater-1_4_8-2014h.zip -d sys:\tmp
- Update the JRE:
java -jar sys:\tmp\tzupdater.jar -f -bc -v
- In the NCF files that start Java applications on NetWare (like iManager, ZENworks), force the JRE to use an exact time zone. It is done by adding the -Duser.timezone parameter to the command line used to start Java application.
java -Duser.timezone=”Asia/Kamchatka ” …
You might use appropriate values from the following list:
CNA6, CNE6, MCNE, NCA, NCE, CLA, CLP