FET, EET, EEST и подготовка к НЕ переводу времени 30 октября 2011 года

Данная статья написана по мотивам статей http://dimdim.org.ua/time2011/ , http://www.opennet.ru/tips/2630_linux_timezone_time.shtml и содержит информацию о том, как это делать на FreeBSD (в статьях указаны методы для разных Linux систем, а вот FreeBSD аккуратно обошли).

1) Делаем бекапы.

На всякий случай сделаем бэкапы наших зон (как оказалось не зря, так как отменили этот закон ). Информация о зонах лежит здесь /usr/share/zoneinfo. Поэтому делаем бэкап этой папки.

2) Смотрим, обновлена ли у нас информация о зонах:

skeletor@gate:~$ zdump -v Europe/Kiev | grep 2011
Europe/Kiev Sun Mar 27 00:59:59 2011 UTC = Sun Mar 27 02:59:59 2011 EET isdst=0 gmtoff=7200
Europe/Kiev Sun Mar 27 01:00:00 2011 UTC = Sun Mar 27 04:00:00 2011 EEST isdst=1 gmtoff=10800
Europe/Kiev Sun Oct 30 00:59:59 2011 UTC = Sun Oct 30 03:59:59 2011 EEST isdst=1 gmtoff=10800
Europe/Kiev Sun Oct 30 01:00:00 2011 UTC = Sun Oct 30 03:00:00 2011 EET isdst=0 gmtoff=7200

Ну и на всякий случай, посмотрим, будет ли переведено время:

skeletor@gate:~$ date
вторник, 11 октября 2011 г. 12:43:08 (EEST)
skeletor@gate:~$ date -v +768H
суббота, 12 ноября 2011 г. 11:43:10 (EET)

Как видим — будет.

3) Получение новой базы часовых поясов.

Нам нужен файл tzdata2011k.tar.gz, который можно скачать отсюда (выложено несколько ссылок, так как часть из них может не работать)

http://dimdim.org.ua/wp-content/uploads/2011/10/tzdata2011k.tar.gz
ftp://elsie.nci.nih.gov/pub/tzdata2011k.tar.gz
http://narod.ru/disk/27615156001/tzdata2011k.tar.gz.html
http://people.freebsd.org/~edwin/tzdata2011k.tar.gz

4) Установка.

Скачанный архив распаковываем в любую папку, находим файл со своим регионом (я использовал europe для города Kiev) и смотрим информацию:

Zone Europe/Kiev 2:02:04 - LMT 1880
2:02:04 - KMT 1924 May 2 # Kiev Mean Time
2:00 - EET 1930 Jun 21
3:00 - MSK 1941 Sep 20
1:00 C-Eur CE%sT 1943 Nov 6
3:00 Russia MSK/MSD 1990
3:00 - MSK 1990 Jul 1 2:00
2:00 - EET 1992
2:00 E-Eur EE%sT 1995
2:00 EU EE%sT 2011 Mar lastSun 1:00u
3:00 - FET # Further-eastern European Time

Нас интересует присутствие строки FET. Если она есть, значит база обновлённая. Переходим к установке:

— компиллируем файлы зон (без ключа «-d» пишет файлы временных зон сразу в /usr/share/zoneinfo)

#zic europe

Проверяем дату файла

#ls -l /usr/share/zoneinfo/Europe/Kiev
-rw-r--r-- 1 root wheel 1316 11 окт 12:34 /usr/share/zoneinfo/Europe/Kiev

Значит мы имеем изменённый файл зоны. Теперь либо копируем этот файл в файл /etc/localtime либо делаем симлинк.

5) Проверка

#zdump -v Europe/Kiev | grep 2011
Europe/Kiev Sun Mar 27 00:59:59 2011 UTC = Sun Mar 27 02:59:59 2011 EET isdst=0 gmtoff=7200
Europe/Kiev Sun Mar 27 01:00:00 2011 UTC = Sun Mar 27 04:00:00 2011 FET isdst=0 gmtoff=10800

ну и проверим перевод часов:

skeletor@bar:~$ date
вторник, 11 октября 2011 г. 13:06:33 (FET)
skeletor@bar:~$ date -v +768H
суббота, 12 ноября 2011 г. 13:06:34 (FET)

Примечание.

После недолгих колебаний, группа энтузиастов возродила проект. Подробнее можно прочесть здесь

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *