reminder - new timezones for commonwealth games

Adrian Butterworth adrian at economicoutlook.net
Wed Feb 1 02:07:53 CST 2006


This year (2006 only) the end of daylight savings has been moved from
last week of March to first week of April. Instead of ending on Sunday
27 March 2006 at 3:00AM, it will end on Sunday 2 April 2006 at 3:00AM. 

The change effects Melbourne, Sydney, Adelaide, Hobart and related
zones. 

These changes were announced in June and are included in the latest
glibc-2.3.6, but if you have environments based on an earlier release
your timezones are most likely wrong.

For many systems this may be of no consequence or a minor annoyance for
a week. However some systems like financial transactions & security have
critical local time dependencies. 

You can check if your system zones are correct with:
> # /usr/sbin/zdump -v  /usr/share/zoneinfo/Australia/Adelaide  |grep "2006"
the output should contain "Sun Apr  2" not "Sun Mar 26"

If not you may be able to resolve this using an updated package from your 
distro, but if not it should be possible to manually update the zone files
quite simply.  

This is how I do it manually

first I make a temporary backup - just in case ;)
> # cp -a /usr/share/zoneinfo /tmp/  

then either
obtain the source & use the zone compiler "zic" eg:
> # wget http://ftp.gnu.org/pub/gnu/glibc/glibc-2.3.6.tar.gz
> # tar -xzf glibc-2.3.6.tar.gz
> # zic glibc-2.3.6/timezone/australasia
> # zic glibc-2.3.6/timezone/backward

or copy the /usr/share/zoneinfo/Australia directory from another
system with fixed zone files. eg:
> # rsync -ae ssh zil.economicoutlook.net:/usr/share/zoneinfo/Australia/  /usr/share/zoneinfo/Australia/

either way check it worked eg:
> # /usr/sbin/zdump -v /usr/share/zoneinfo/Australia/Adelaide  |grep "2006"
> /usr/share/zoneinfo/Australia/Adelaide  Sat Apr  1 16:29:59 2006 UTC = Sun Apr  2 02:59:59 2006 CST isdst=1 gmtoff=37800
> /usr/share/zoneinfo/Australia/Adelaide  Sat Apr  1 16:30:00 2006 UTC = Sun Apr  2 02:00:00 2006 CST isdst=0 gmtoff=34200
> /usr/share/zoneinfo/Australia/Adelaide  Sat Oct 28 16:29:59 2006 UTC = Sun Oct 29 01:59:59 2006 CST isdst=0 gmtoff=34200
> /usr/share/zoneinfo/Australia/Adelaide  Sat Oct 28 16:30:00 2006 UTC = Sun Oct 29 03:00:00 2006 CST isdst=1 gmtoff=37800
> #

note: watch out for environments like Java runtimes or Postgres that
carry there own zone info which may also need attending to!

regards
Adrian Butterworth



More information about the linuxsa mailing list