В России и Украине отменен переход на зимнее время. В отличие от прошлых лет, 30 октября 2011 отныне часы переводить не нужно. Для большинства дистрибутивов новая база часовых поясов будет установлена через штатные обновления и не потребует от пользователя каких-либо действий. Для устаревших систем потребуется внесение ручных изменений.Текущий часовой пояс в Linux устанавливается файлом /etc/localtime. Этот файл представляет собой ссылку на информационный файл зоны или его копию, в большинстве дистрибутивов расположенный в каталоге /usr/share/zoneinfo. В данном каталоге размещена база данных с информацией о часовых поясах. Обновления кода базы данных часовых поясов можно получить с сайта ftp://elsie.nci.nih.gov/pub/
Для ручного обновления базы часовых поясов загружаем её последнюю версию:
wget tp://elsie.nci.nih.gov/pub/tzdata2011k.tar.gz
Распаковываем во временную директорию:
tar xzf tzdata2011k.tar.gzПеред внесением изменений проверим переходы времени для текущей зоны. Видим ежегодное расписание переходов времени зимнее/летнее вплоть до 2038 года.
zdump -v Asia/Yekaterinburg |grep 2011
Asia/Yekaterinburg Sat Mar 26 20:59:59 2011 UTC = Sun Mar 27 01:59:59 2011 YEKT isdst=0 gmtoff=18000
Asia/Yekaterinburg Sat Mar 26 21:00:00 2011 UTC = Sun Mar 27 03:00:00 2011 YEKT isdst=0 gmtoff=21600
Asia/Yekaterinburg Sat Oct 30 20:59:59 2011 UTC = Sun Oct 31 02:59:59 2011 YEKST isdst=1 gmtoff=21600
Asia/Yekaterinburg Sat Oct 30 21:00:00 2011 UTC = Sun Oct 31 02:00:00 2011 YEKTЕсли последних двух строк нет, значит в систем уже установлена обновленная база временных зон и больше ничего делать не нужно.
Иначе, убедимся в наличии необходимого обновления, для городов в европейской части смотрим файл europe, для азиатской части страны - asia. Разделение в этих файлах весьма условное, например, Екатеринбург относится к группе Asia, но указан в файле europe:
vi europe
ищем город для своего часового пояса:
Zone Asia/Yekaterinburg 4:02:24 - LMT 1919 Jul 15 4:00
4:00 - SVET 1930 Jun 21 # Sverdlovsk Time
5:00 Russia SVE%sT 1991 Mar 31 2:00s
4:00 Russia SVE%sT 1992 Jan 19 2:00s
5:00 Russia YEK%sT 2011 Mar 27 2:00s
6:00 - YEKT # Yekaterinburg TimeНа всякий случай делаем резервную копию файла с текущими настройками:
cp /etc/localtime /tmp/localtime.old
Компилируем временные зоны из файла europe. Утилита zic читает текстовый файл с описаниями зон и на выходе формирует бинарные файлы специального формата. Стоит обратить внимание что утилита без ключа "-d" пишет файлы временных зон сразу в /usr/share/zoneinfo, что нам и необходимо .
zic europe
Создаем ссылку на обновленную временную зону
ln -sf /usr/share/zoneinfo/Asia/Yekaterinburg /etc/localtime
Проверяем установленную зону в файле
Для Fedora/RHEL/CentOS:
cat /etc/sysconfig/clock | grep ZONE
ZONE="Asia/Yekaterinburg"или для Debian/Ubuntu:
cat /etc/timezone
Asia/YekaterinburgПосле обновления проверим переходы времени для нашей текущей зоны. В последний раз переход произошел Mar 27 04:00:00 2011
zdump -v Asia/Yekaterinburg |grep 2011
Asia/Yekaterinburg Sat Mar 26 20:59:59 2011 UTC = Sun Mar 27 01:59:59 2011 YEKT isdst=0 gmtoff=18000
Asia/Yekaterinburg Sat Mar 26 21:00:00 2011 UTC = Sun Mar 27 03:00:00 2011 YEKT isdst=0 gmtoff=21600Убедимся, что 30 октября 2011 года время будет без перехода на зимнее время:
date --date='1000hours'
Сбт Ноя 12 14:36:46 YEKT 2011
URL: http://dimdim.org.ua/time2011/
Обсуждается: http://www.opennet.me/tips/info/2630.shtml
В Беларуси этот переход отменен тоже.
Ну и зря отменили. Получается, что в центральной России будет UTC+4, хотя до введения впервые переходов было UTC+3. Теперь зимой будет рассветать после 9-ти. И как же на работу зимой просыпаться... ужос нах.
> Теперь зимой будет рассветать после 9-ти.Если бы поставили время близкое к Вашей временной зоне, но было бы всё в порядке.
У меня зона +2 (а город на полосе +2,5, как Москва), а время +3, так я рад что отменили, а то ранее сразу после перевода на зимнее время темнеть начинало в 5 часов вечера.
Тяжело просыпаться. Привыкнете.
Мы в Мурманске с полярной ночью, для нас почти ничего не меняется.:)
>Ну и зря отменили. Получается, что в центральной России будет UTC+4, хотя до введения впервые переходов было UTC+3. Теперь зимой будет рассветать после 9-ти. И как же на работу зимой просыпаться... ужос нах.А с чего Вы решили, что это сделано для удобства людей? В нашей стране _ничего_ не делается для людей - пора бы уже привыкнуть.
>В нашей стране _ничего_ не делается для людей - пора бы уже привыкнуть.И всегда такое пишут люди, которые _ничего_ не пытаются изменить. Если тебя имеет правительство, а ты и не пытаешься с этим ничего поделать, то ты сам виноват.
> Если тебя имеет правительство, а ты и не пытаешься с этим ничего поделать, то ты сам виноват.* Если тебя кто-то имеет, а ты и не пытаешься с этим ничего поделать, то тебе это нравится.
(с)Кэп
ну, сначала сдвинули время на 2 недели - старый и новый стиль. где то в начале 20 века вроде как
-
потом отменили перевод времени, НО в неправильную сторону. То есть от природного времени ушли на час, а потом ещё на час
-
и правильно, связи с природой, биоритмы там всякие - надо рвать, чтобы выжившие были ещё больнее и запареннее
-
про инновации - упрощения - в области языка, развал системы образования и медицины тож не забываем. Конвейер по производству неграмотных быдлоидов и выжимающих себя за зарплату плоских бездушных автоматов отстраивается потихоньку. А чо ? Государство есть инструмент принуждения ... и враг титульной нации. Это если соглашаться с отдельными исследователями
Перевод времени в России отменяли в неправильную сторону уже дважды)
Флудить изволите? Здесь обсуждается не полезность отмены перевода времени, а реконфигурация компьютерных систем при таких изменениях.
Отлично написано, спасибо.
Спасибо большое за статью. Как раз недавно искал, как отменить переход.
Есть способ еще проще: использовать зону UTC+X вместо "страно-городовой".
А в Windows что сделать??
Установить обновления.
Для FreeBSD есть порт misc/zoneinfo, который обновляет БД часовых поясов.
После установки порта необходимо сменить текущую зону tzsetup(8) (или скопировать зону вручную).
> Перед внесением изменений проверим переходы времени для текущей зоны. Видим ежегодное расписание
> переходов времени зимнее/летнее вплоть до 2038 года.
> zdump -v Asia/Yekaterinburg |grep 2011За это спасибо, как-то не дошёл до этой утилиты, чтобы проверить зону. :)
А в Ubuntu, например, tzdata обновилась и всё пучком.
oneiric: tzdata 2011j-1 и~$ 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так что спасибо за статейку :)
для Украины обновления пока небыло
Ждите, пожалуйста,пакета... Ту-ту-у... http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=642232 Ждите, пожалуйста,пакета...
Дык фокус в том, что Рада приняла этот законопроект, но для вступления его в силу, он должен быть подписан президентом. А этого еще не произошло. То есть Украина еще официально не отменила перевод времени. Какие ж тут могут быть апдэйты…
Украина уже отменила отмену перехода на зимнее время :)) Так что вы занимайтесь рукоделием сами.
было, только в tzdata 2011k-1 до которого сегодня обновили...
CentOS приятно порадовал:
# zdump -v Asia/Yekaterinburg | grep 2011
Asia/Yekaterinburg Sat Mar 26 20:59:59 2011 UTC = Sun Mar 27 01:59:59 2011 YEKT isdst=0 gmtoff=18000
Asia/Yekaterinburg Sat Mar 26 21:00:00 2011 UTC = Sun Mar 27 03:00:00 2011 YEKT isdst=0 gmtoff=21600
> vi europeМожно уточнить где находится этот текстовый файл?
>> vi europe
> Можно уточнить где находится этот текстовый файл?а архиве с тздатой
очень содержательно...
а где взять архив?
> очень содержательно...
> а где взять архив?алё!!! ты статью читал?
Нашел. Короче нада брать исходники tzdata, там все лежит. Или установить в систему соответствующий пакет.
Для дебиана/убунтуподобных намного проще, обновить пакет tzdata - http://hosting-notes.ru/podgotovka-k-otmene-perehoda-na-zimn.../
> намного проще, обновить пакет tzdataДа, ладно??!
Если /etc/localtime - ссылка, то достаточно выполнить zic с новыми исходниками. Zic обновляет сразу в /usr/... файло.
Спасибо за статью!############################################
#!/bin/sh# Disallow winter time for Moscow
echo "Disable winter time for MoscoW"
sleep 3
mkdir ./temp1
cd ./temp1
wget ftp://elsie.nci.nih.gov/pub/tzdata2011k.tar.gz
tar xzf tzdata2011k.tar.gz
cp /etc/localtime /tmp/localtime.old
zic europe
ln -sf /usr/share/zoneinfo/Europe/Moscow /etc/localtime
cd ..
rm -rf ./temp1############################################
подскажите пожалуйста:
в какой момент времени используется файлик /etc/localtime ?
можно ли его заменить при работающих сервисах (бд оракл и т.п.) ?
чтобы файл зоны заменить не останавливая работу.
используется рантайм системной библиотекой, то есть - ничего не надо останавливать и перезапускать.
Подскажите плз, что такое tzcode. Зачем он вообще требуется, нужно ли его обновлять?
Люблю я летнее время. Но вообще-то именно летнее время "искуственное", а зимнее время является "правильным", когда солнце в 12:00 находится в зените. Так что лучше б честно сказали, что рабочий день впредь будет начинаться не в 8 (зимой) и 7 часов (летом), а только в 7 часов, и всё. А то стрелки двигают.
А помоему вы ошибаетесь: т.к. "зимнее" время свинуто относительно местного (природного, когда солнце в зените именно в 12 часов дня) на 1 час вперед.
"летнее" - соответственно на 2 часа вперед.
> А помоему вы ошибаетесь: т.к. "зимнее" время свинуто относительно местного (природного,
> когда солнце в зените именно в 12 часов дня) на 1
> час вперед.
> "летнее" - соответственно на 2 часа вперед.А в справочники заглянуть, или, того и гляди, на местности время зенита замерить? Прошлой зимой зенит был ближе всего к 12 дня в большинстве поясов России. Теперь не так.
Как удивительно устроена жизнь.
Не успела появится эта заметка на opennet.ru, как следующая новость о закрытии БД временных зон (http://www.opennet.me/opennews/art.shtml?num=31968), на которую автор ссылается.
Парадоксально :)
> Как удивительно устроена жизнь.
> Не успела появится эта заметка на opennet.ru, как следующая новость о закрытии
> БД временных зон (http://www.opennet.me/opennews/art.shtml?num=31968), на которую
> автор ссылается.
> Парадоксально :)Вообще, жесть конечно. Вчера только запустил скриптик, выполняющий действия из статьи, на всех серверах, а сегодня он уже не работает. :)
Кому еще нужна база с зонам:
Или здесь http://people.freebsd.org/~edwin/tzdata2011k.tar.gz
СЕРВЕР ДОЛЖЕН БЫТЬ ВСЕГДА В UTC (и BIOS тоже)для хомячков и апликушек юзается
export TZ=чёнадо
ага, а потом открываем логи и удивляемся, чего время такое странное?
> ага, а потом открываем логи и удивляемся, чего время такое странное?Логи не для людей, логи для парсеров. Для людей отчёты, создаваемые парсером.
А у меня так получилось:
Asia/Yekaterinburg Sat Mar 26 20:59:59 2011 UTC = Sun Mar 27 01:59:59 2011 YEKT isdst=0
Asia/Yekaterinburg Sat Mar 26 21:00:00 2011 UTC = Sun Mar 27 03:00:00 2011 YEKT isdst=0
Asia/Yekaterinburg Tue Jan 19 03:14:07 2038 UTC = Tue Jan 19 09:14:07 2038 YEKT isdst=0
Asia/Yekaterinburg Mon Jan 18 03:14:07 2038 UTC = Mon Jan 18 09:14:07 2038 YEKT isdst=0как мне убрать оставшиеся две стоки? ОС - Solaris.
не заморачиваться так как 2038 году работать эта система наврят ли будет....или ты уже на пенсии будешь....
Нашел еще, что для некоторых линухов есть пакет tzdata-java
Его кто-нибудь обновляет?Для начала - как поглядеть текущие timezone в установленной яве?
> Нашел еще, что для некоторых линухов есть пакет tzdata-java
> Его кто-нибудь обновляет?Пакет исходного кода tzdata
* lenny (libs): 2011k-0lenny1
Бинарный пакет: tzdata, tzdata-java
* lenny-volatile/volatile (-): 2011d-0lenny1
Бинарный пакет: tzdata, tzdata-java
* squeeze (libs): 2011k-0squeeze1
Бинарный пакет: tzdata, tzdata-java> Для начала - как поглядеть текущие timezone в установленной яве?
>> Нашел еще, что для некоторых линухов есть пакет tzdata-java
>> Его кто-нибудь обновляет?
> Пакет исходного кода tzdata
> * lenny (libs): 2011k-0lenny1
> Бинарный пакет: tzdata, tzdata-java
> * lenny-volatile/volatile (-): 2011d-0lenny1
> Бинарный пакет: tzdata, tzdata-java
> * squeeze (libs): 2011k-0squeeze1
> Бинарный пакет: tzdata, tzdata-javaпоясните пожалуйста, не совсем понимаю Вашу мысль
Предлагаю последнюю команду date командовать в такой редакции:date --date='480hours'
Тогда время в выдаче команды будет равно текущему с точностью до минуты. Если получится с точностью до часа -- накат не удался :)
Большове спасибо!
Статья любопытная, но все гораздо проще, просто обновить из портов:
#cd /usr/ports/misc/zoneinfo
#make install clean
#tzsetup
Установить зону заноово и все.
ftp://munnari.oz.au/pub/tzdata2011l.tar.gz
Незнаю как поступить обновить tzdata или выставить часы по GMT. Как лучше ?
> Незнаю как поступить обновить tzdata или выставить часы по GMT. Как
> лучше ?Сначала разобраться, что такое GMT, что такое UTC, и в чем суть /etc/localtime
и последнее обязательно проверьтеzdump -v /etc/localtime |grep 2011
а то у меня по какой то причине слетела ссылка на localtime хотя в /usr/share/zoneinfo/Asia/Yekaterinburg изменения были...
чтобы проверить наличие перехода на зимнее время лучше сделать так$ date
Втр Окт 18 21:11:24 YEKST 2011
$ date --date='12days'
Вск Окт 30 20:11:32 YEKT 2011
$ date --date='11days'
Сбт Окт 29 21:11:41 YEKST 2011и сразу всё понятно, а причём здесть 1000hours не вполне понятно
В Украине вернули переход на зимнее время, с переходом на летнее пока полный туман :)
Немногим более подробно и полно описано здесь :
http://www.tune-it.ru/web/dsh/2/-/blogs
Спасибо за отличную статью!