Историческая справка:
20.09.2011:
Верховная Рада поддержала законопроект №8330 «Об изменении порядка исчисления времени на территории Украины», инициированный народным депутатом Олегом Надошей (фракция Партии регионов).
Чтоб ему жилось хорошо……
————————
ОТБОЙ!!!! Постановление отменили
————-
А теперь о проблемах которые возникнут в связи с уровнем интелектуального развития наших политиков:
1. Все кто купил билеты на самолет – трижды проверьте расписание 🙂
2. В международных компаниях могут возникнуть проблемы с синхронизацией событий +/-час
3. Придется привыкать к тому, что не все устройства с утра покажут одинаковое время
4. и еще кучка проблем с электросчетчиками, поездами дальнего следования и т.д.
В моем случае проблемы могут возникнуть с Linux-серверами, которые синхронизируют свои конфигурации и данные между собой.
Заходим на Gentoo и смотрим как он поведет себя в ноябре:
date --date='20111101'
вівторок, 1 листопада 2011 00:00:00 +0200
Вывод этой команды содержит часовой пояс на 1 ноября, в нашем случае это +0200, что соответствует зимнему времени. Так же некоторые версии date выдают информацию в таких форматах: (EET) (UTC+2)
Все три варианта нам не подходят, так как нам нужно иметь часовой пояс +0300, он же FET, он же UTC+3
Рассмотрим 2 варианта приведения в порядок времени
Обновление штатными средствами Gentoo
Обновляем дерево portage
emerge --sync
Смотрим какие версии timezone-data у нас доступны:
eix timezone-data
Нам нужна версия 2011k и выше. Ставим самый новый пакет
emerge -av /usr/portage/sys-libs/timezone-data/timezone-data-2011l.ebuild
Проверяем, что символическая ссылка localtime правильная:
ls -lah /etc/localtime
/etc/localtime -> /usr/share/zoneinfo/Europe/Kiev
Проверяем время:
date --date='20111101'
Втр Ноя 1 00:00:00 FET 2011
Вот теперь все хорошо, система останется в часовом поясе FET. Для уверености можно просмотреть правила перевода времени для Киева
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
Europe/Kiev Sun Mar 27 01:00:00 2011 UTC = Sun Mar 27 04:00:00 2011 FET isdst=0
Как видим, в 2011-м году в Украине не запланирован перевод времени в октябре.
Вариант №2. Ручная замена файлов timezone
Есть ситуации когда система очень давно не обновлялась и если начать обновление одного пакета, то он за собой потянет кучу зависимостей. Поэтому нужно по-тихому обновить timezone-data
Да, это не правильно, но такова жизнь 🙂
Смотрим откуда нужно скачать самый новый набор правил:
cat /usr/portage/sys-libs/timezone-data/timezone-data-2011l.ebuild
Ищем там переменную SRC_URI:
SRC_URI="ftp://elsie.nci.nih.gov/pub/tzdata${data_ver}.tar.gz
ftp://munnari.oz.au/pub/tzdata${data_ver}.tar.gz
ftp://elsie.nci.nih.gov/pub/tzcode${code_ver}.tar.gz
ftp://munnari.oz.au/pub/tzcode${code_ver}.tar.gz
mirror://gentoo/tzdata${data_ver}.tar.gz
mirror://gentoo/tzcode${code_ver}.tar.gz"
Зачем это нужно? Читаем статейку Глобальная база данных часовых поясов закрыта по судебному иску
Выбираем любое зеркало и скачиваем
wget ftp://munnari.oz.au/pub/tzdata2011l.tar.gz
Распаковываем:
tar -xvf tzdata2011l.tar.gz
Смотрим есть ли правила для Киева:
cat europe | grep -C 10 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
И видим, что последний перевод времени запланирован на 2011год, значит все правильно
Компилируем новый набор файлов временных зон
zic europe
проверяем:
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
Europe/Kiev Sun Mar 27 01:00:00 2011 UTC = Sun Mar 27 04:00:00 2011 FET isdst=0
Теперь все в норме.
Если у Вас не прошли изменения, то нужно проверить есть-ли ссылка на файл зоны:
ls -la /etc/localtime
/etc/localtime -> /usr/share/zoneinfo/Europe/Kiev
Вот и все.
PS: Еще более простой способ. Выкладываем на фтп файл europe из архива tzdata и на сервере выполняем 3 команды:
wget ftp://10.0.0.1/tzdata/europe
zic europe
zdump -v Europe/Kiev | grep 2011
————————
ОТБОЙ!!!! Переходим на зимнее время! Постановление отменили
————-
В связи с переходом на зимнее время нужно использовать самый новый пакет tzdata2011m с часовыми поясами, который находится на сайте IANA
Сповіщення: Блог системного администратора » Переход на зимнее время в Украине для линукс систем