The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Настройка перехода на зимнее время для устаревших систем
В ночь с 25 на 26 октября в РФ будет осуществлён переход на постоянное зимнее
время. Астрономический полдень сдвинется с 14 до 13 часов, темнеть в декабре
будет в 4 часа дня, а светать в 9 утра, в июле темнеть будет в 10 вечера, а
светать в 3 ночи. Для "сов" наступает настоящий кошмар :-)

Для систем, время поддержки которых не истекло  параметры перевода часов уже
поступили с очередным обновлением. Для устаревших систем придётся обновлять
данные часовых поясов вручную. Обновления содержимого базы данных часовых
поясов можно получить с сайта ftp://ftp.iana.org/tz/releases/

Для ручного обновления базы часовых поясов загружаем свежую версию архива tzdata:

   mkdir tz
   cd tz
   wget ftp://ftp.iana.org/tz/releases/tzdata2014i.tar.gz

Распаковываем:
    
    tar xzf tzdata2014i.tar.gz

Смотрим . запланированы ли правила перевода часов:

    zdump -v Asia/Yekaterinburg |grep 2014
    
Если команда ничего не выдала, значит в системе установлена старая база часовых
поясов и её нужно обновить.

Ищем нужный город в файлах asia или europe, географически положение может не
совпадать, например,  Екатеринбург находится в Азии, но указан в файле europe.

Компилируем часовые пояса из файла europe. Утилита zic читает текстовый файл с
описаниями зон и на выходе формирует бинарные файлы специального формата и
сохраняет их в директорию /usr/share/zoneinfo (изменить директорию можно флагом "-d"):

    zic europe

Скомпилированные файлы параметров часовых поясов будут сохранены в файле
/usr/share/zoneinfo/Asia/Yekaterinburg, который нужно скопировать в файл
/etc/localtime, определяющий текущий часовой пояс:

   cp /etc/localtime /etc/localtime.old
   cp -f /usr/share/zoneinfo/Asia/Yekaterinburg /etc/localtime

После обновления в выводе zdump должно появиться правило перевода часов:

   zdump -v Asia/Yekaterinburg |grep 2014

   Asia/Yekaterinburg  Sat Oct 25 19:59:59 2014 UTC = Sun Oct 26 01:59:59 2014 YEKT isdst=0 gmtoff=21600
   Asia/Yekaterinburg  Sat Oct 25 20:00:00 2014 UTC = Sun Oct 26 01:00:00 2014 YEKT isdst=0 gmtoff=18000

При использовании PostgreSQL требуется не забыть обновить внутреннюю базу
часовых поясов данной СУБД, которая расположена в директории
/usr/local/pgsql/share/timezone (меняем
/usr/local/pgsql/share/timezone/Asia/Yekaterinburg и перезапускаем PostgreSQL).
В PHP может использоваться собственная база часовых поясов, в этом случае
требуется обновить пакет http://pecl.php.net/package/timezonedb


Дополнительно стоит обратить внимание на логику вычисления отрезков времени в
биллинговых системах и прочих службах. С 2011 года, когда был отменён переход
на зимнее/летнее время, успели появиться приложения, не учитывающие сдвиг на
час, что чревато списанием/начислением лишнего часа и прочими неприятными
эффектами, проявляющимися при запуске программ в "исчезнувший" час.
 
25.10.2014
Ключи: timezone / Лицензия: CC-BY
Раздел:    Корень / Администратору / Система / Установка и синхронизация времени

Обсуждение [ Линейный режим | Показать все | RSS ]
  • 1.1, admin (??), 09:28, 26/10/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > При использовании PostgreSQL требуется не забыть обновить внутреннюю базу
    > часовых поясов данной СУБД, которая расположена в директории
    > /usr/local/pgsql/share/timezone

    Там внутри такой текст, так что решение неверное.
    # NOTE:
    #   This file is NOT loaded by the PostgreSQL database.  It just serves as
    #   a template for timezones you could need.  See the 'Date/Time Support'
    #   appendix in the PostgreSQL documentation for more information.

     
     
  • 2.2, Аноним (-), 10:21, 26/10/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Такие примечания в текстовиках из share/timezonesets, это и есть шаблоны, которые нужно скомпилировать. Скомпилированные файлы лежат в share/timezone и вполне себе используются, по крайней мере в старых выпусках PostgreSQL.
     
     
  • 3.10, AS (??), 10:55, 27/10/2014 [^] [^^] [^^^] [ответить]  
  • +/
    после service postgre92 restart он жрет обновл. tzdata !!
     
     
  • 4.11, Andrey Mitrofanov (?), 11:25, 27/10/2014 [^] [^^] [^^^] [ответить]  
  • +/
    #>> лежат в share/timezone и вполне себе используются, по крайней мере в старых выпусках PostgreSQL.

    > после service postgre92 restart он жрет обновл. tzdata !!

    У постгресовского ./confifure есть ключ --with-system-tzdata=/usr/share/zoneinfo ("украдено" из пакетов PGDG для el6; см.также вывод pg_config своей сборки) . Причём по умолчанию, в отсутствие этого ключа, Pg _копирует в свой share/timezone текущий tzdata со сборочной машины.

    Вы двое говорите о разных Pg, о разных бинарниках, собранных с разным значением (присутствием/отсутствием) этого ключа.

     

  • 1.3, Аноним (-), 19:34, 26/10/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    java ещё, вроде, имеет свою tzdata
     
  • 1.4, StainlessRat (??), 20:06, 26/10/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Интересно, на оракле вчера скачивал тздата с индексом h, а здесь индекс i
    Это прикол от iana или от oracle ?
     
     
  • 2.19, fi (ok), 19:50, 30/10/2014 [^] [^^] [^^^] [ответить]  
  • +/
    oracle отстал от iana :)

     

  • 1.5, KinderSurprise (?), 23:10, 26/10/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Для "сов" наступает настоящий кошмар :-)

    Почему?

     
     
  • 2.7, Аноним (-), 08:26, 27/10/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Темнеет на час раньше, придётся больше времени в темноте проводить.
     
     
  • 3.12, Michael Shigorin (ok), 13:07, 27/10/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это как раз ерунда, главное -- когда вставать.
     
     
  • 4.14, Аноним (-), 14:48, 27/10/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Это как раз ерунда, главное -- когда вставать.

    Ничего подобного, время окончания рабочего дня не сдвинулось, т.е. после окончания рабочего дня остаётся меньше светлого времени.


     
     
  • 5.15, Michael Shigorin (ok), 17:18, 27/10/2014 [^] [^^] [^^^] [ответить]  
  • +/
    >> Это как раз ерунда, главное -- когда вставать.
    > Ничего подобного, время окончания рабочего дня не сдвинулось,
    > т.е. после окончания рабочего дня остаётся меньше светлого времени.

    Для умеренной "совы" по московскому светлое время после рабочего вечера бывает разве что ближе к летнему солнцестоянию...

     
     
  • 6.27, count0krsk (ok), 03:32, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    И для Сибирских сов аналогично ;-)
    Да это даже и лучше, алкашни меньше, можно погулять спокойно. Солнце глаза не засвечивает ))
     
  • 3.29, Guest (??), 11:33, 24/02/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Сейчас наиболее близко к астрономическому солнечному времени. Разница около 30 мин. Так что для самочувствия лучше.
     

  • 1.6, unscrubber (?), 05:49, 27/10/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    можно и просто выбрать GMT+[2..11]
     
     
  • 2.8, Аноним (-), 08:35, 27/10/2014 [^] [^^] [^^^] [ответить]  
  • +/
    UTC+[2..11]

    GMT это с переводом на летнее - зимнее

     
     
  • 3.9, unscrubber3 (?), 10:32, 27/10/2014 [^] [^^] [^^^] [ответить]  
  • +/
    где ты видишь правило перехода на DST в выводе :
    zdump -v /usr/share/zoneinfo/Etc/GMT+3
    нет там перевода, не вводи в заблуждение (linux/freebsd tested)
     
  • 2.20, fi (ok), 19:51, 30/10/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > можно и просто выбрать GMT+[2..11]

    ага, только в Москве и Питере GMT-3  :))

     
  • 2.23, Аноним (-), 11:36, 05/11/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Quwait - +3
    Abu Dhabi - +4

    У арабов нет перевода часов, поэтому можно на них всегда рассчитывать. :)

     

  • 1.13, Andrey Mitrofanov (?), 14:34, 27/10/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > В PHP может использоваться собственная база часовых поясов, в этом случае требуется обновить пакет http://pecl.php.net/package/timezonedb

    + http://www.opennet.me/openforum/vsluhforumID8/7918.html

     
  • 1.17, Гость (??), 13:43, 29/10/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Люди, какой диагноз-то?
    Нам через пол-года снова этой чехардой заниматься с многомиллиардными ущербами, или эта ересь раз и навсегда врезалась в нашу жизнь?
     
  • 1.18, kurokaze (ok), 02:21, 30/10/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Отриньте гос маразм, по крайней мере на то недолгое время что он ещё будет. Живите по UTC и конвертируйте где нужно
     
     
  • 2.21, имя (?), 07:24, 03/11/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > Живите по UTC

    UNIX timestamp и так в UTC

    > конвертируйте где нужно

    И для чего тогда, по-вашему, придумали timezone db? Или вам плевать, какие смещения были в прошлом, «показываем как хотим»?

     

  • 1.22, Stranger (??), 08:02, 04/11/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Спасибо!
     
  • 1.24, iZEN (ok), 12:13, 10/11/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    На неподдерживаемой Windows XP для Москвы можно поставить часовой пояс "GMT+3" тех государств, в городах которых всегда трезвое правительство - Кувейт, Эр-Рияд, Багдад.
     
     
  • 2.25, дмитрий (??), 00:02, 11/11/2014 [^] [^^] [^^^] [ответить]  
  • +/
    рият те еще адекваты, у них в 80-х был вообще свой по солнцу +6,777 минут сдвиг от ЖМТ-сетки
     

  • 1.26, Конь Педальный (?), 15:40, 08/12/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    /etc/localtime тупо скопировать с одно сервака где всё стало на другой. Это конечно не кашерно - но работает, хавается допотомными серваками 10 летней давности.  Хочется больше экшона поменять таймзон на Багдад, время не перереводится, часовой пояс совпадает.
     
     
  • 2.28, count0krsk (ok), 03:36, 12/12/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > /etc/localtime тупо скопировать с одно сервака где всё стало на другой. Это
    > конечно не кашерно - но работает, хавается допотомными серваками 10 летней
    > давности.  Хочется больше экшона поменять таймзон на Багдад, время не
    > перереводится, часовой пояс совпадает.

    Когда в виндах Красноярского времени не было, ставили "Бангкок, Джакарта, Ханой", как сейчас помню )))

     


     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру