Хабра сосет
9 октября 2014 в 14:53

Администрирование → Перевод времени 26 октября 2014 года или ударим трудом по разгильдяйству

Госдума России приняла в июле законопроект о возврате к зимнему времени, а также об установлении новой системы часовых зон. В результате 26 октября 2014 года в большинстве регионов России время будет снова переведено на час назад, и в стране появятся 11 часовых зон вместо 9 существующих сейчас, причем их границы изменятся.

Если для обычных граждан это лишь лишний час поспать, то для системного администратора этот момент есть жуть жуткая. В данной статье я рассмотрю проблему обновления часовых поясов для Windows XP, Windows Server 2003 и системы электронной почты на базе MS Exchange 2003 с нативным клиентом Outlook. Не секрет, что эти системы никуда не делись и хотя и ХР и Exchange 2003 сняты со всех видов поддержки, включая даже премьер поддержку, они успешно используются как в малых так и больших организациях и событие, связанное с переводом стрелок на час назад актуально для них как никогда. Актуально еще и по той причине, что официальных обновлений для снятых с поддержки систем от компании Microsoft нет и не будет. Т.к. по роду деятельности мне пришлось готовить решение для этих систем, проводить некоторые тесты и т.п., то я решил поделиться с коллегами результатами своих трудов. Итак, кому актуально, добро пожаловать под кат. Будет интересно.

Немного общей информации


С принятием Федерального закона Российской Федерации от 21.07.2014г. № 248-ФЗ «О внесении изменений в Федеральный закон „Об исчислении времени“ на территории Российской Федерации 26 октября 2014 года осуществляется перевод часов и устанавливаются соответствующие часовые зоны и значения времени. В результате большинство регионов России перейдет на 1 час назад, при этом будут созданы 3 новые часовые зоны и объединены 2 текущие часовые зоны в одну новую. Изменится конфигурация часовых зон – ряд регионов переместится в соседние или новые зоны. Переход на летнее и зимнее время в течении года по-прежнему осуществляться не будет.
23-го сентября 2014 г. корпорация Microsoft выпустила накопительное обновление (kb2998527) для операционных систем Windows для учета текущих изменений в порядке исчисления времени и разместила его для скачивания в Центре загрузки Microsoft (https://support2.microsoft.com/kb/2998527/ ) и системе автоматического обновления Windows Update (https://catalog.update.microsoft.com ). Это обновление содержит последние изменения, принятые в России. В дополнение, в операционных системах Windows будет создана новая часовая зона для Республики Беларусь.

Изменение исчисления времени произойдет 26 октября 2014 года в 2:00 местного времени. В связи с этим в операционных системах Windows данные изменения отобразятся в момент изменения отсчета часов, следующего после 1ч:59м:59с.

что произойдет 26 октября 2014 года в 2:00 по местному времени


Часовые пояса в России изменятся и довольно существенно. Картина с сайта Лента.ру


В итоге нас ожидает следующая веселая жизнь, а именно.

Изменения в существующих часовых поясах

после того, как вы установите обновление KB29985527 на ваши операционные системы, в существующих часовых поясах, прописанных в системах изменится следующие
 
Новое название часового пояса
Новое отображаемое имя
Текущее название часового пояса
Текущее отображаемое имя
1
Russia Time Zone 1
(UTC+02:00) Kaliningrad (RTZ 1)
Kaliningrad Standard Time
(UTC+03:00) Kaliningrad, Minsk
2
Russia Time Zone 2
(UTC+03:00) Moscow, St. Petersburg, Volgograd (RTZ 2)
Russian Standard Time
(UTC+04:00) Moscow, St. Petersburg, Volgograd
3
Russia Time Zone 4
(UTC+05:00) Ekaterinburg (RTZ 4)
Ekaterinburg Standard Time
(UTC+06:00) Ekaterinburg
4
Russia Time Zone 5
(UTC+06:00) Novosibirsk (RTZ 5)
North Central Asia Standard Time
(UTC+07:00) Novosibirsk
5
Russia Time Zone 6
(UTC+07:00) Krasnoyarsk (RTZ 6)
North Asia Standard Time
(UTC+08:00) Krasnoyarsk
6
Russia Time Zone 7
(UTC+08:00) Irkutsk (RTZ 7)
North Asia East Standard Time
(UTC+09:00) Irkutsk
7
Russia Time Zone 8
(UTC+09:00) Yakutsk (RTZ 8)
Yakutsk Standard Time
(UTC+10:00) Yakutsk

26 октября 2014 года в 2 часа ночи по местному времени часы пользовательских ПК, расположенные в данных часовых поясах будут автоматически переведены на зимнее время. Но не обошлось без исключений. Исключения составляют:
  • в Республике Удмуртия и Самарской области следует выполнить ручное переключение на часовой пояс “Russian Time Zone 3” вместо автоматически установленного часового пояса RTZ 2 (Russian Time Zone 2);
  • в Кемеровской области следует выполнить ручное переключение на часовой пояс “Russian Time Zone 6” вместо автоматически установленного часового пояса RTZ 5 (Russian Time Zone 5);
  • в Забайкальском крае следует выполнить ручное переключение на часовой пояс “Russian Time Zone 7” вместо автоматически установленного часового пояса RTZ 8 (Russian Time Zone 8).


Новые часовые пояса

 
Новое название часового пояса
Новое отображаемое имя
Текущее название часового пояса
Текущее отображаемое имя
1
Russia Time Zone 3
(UTC+04:00) Izhevsk, Samara (RTZ 3)
Отсутствует
Отсутствует
2
Russia Time Zone 10
(UTC+11:00) Chokurdakh (RTZ 10)
Отсутствует
Отсутствует
3
Russia Time Zone 11
(UTC+12:00) Anadyr, Petropavlovsk-Kamchatsky (RTZ 11)
Отсутствует
Отсутствует

Компьютеры пользователей, расположенные в данных часовых поясах должны быть вручную настроены на соответствующий часовой пояс. В ином случае c 26 октября 2014 года c 2 часов ночи по местному времени отображение времени на этих компьютерах будет некорректное.

Объединение часовых поясов

 
Новое название часового пояса
Новое отображаемое имя
Текущее название часового пояса
Текущее отображаемое имя
1
Russia Time Zone 9
(UTC+10:00) Vladivostok, Magadan (RTZ 9)
Vladivostok Standard Time
(UTC+11:00) Vladivostok
Magadan Standard Time
(UTC+12:00) Magadan

Для компьютеров, настроенных на часовой пояс “Vladivostok Standard Time” изменение часового пояса произойдет автоматически. Для компьютеров, настроенных на часовой пояс “Magadan Standard Time” произойдет только корректировка времени. Компьютеры в этом часовом поясе должны быть вручную переключены на новый часовой пояс “Russia Time Zone 9”, как основной часовой пояс после 26 октября 2014 года.
Исключения для компьютеров, настроенных на “Magadan Standard Time”, составляют:
  • в Магаданской области следует вручную переключиться на часовой пояс “Russian Time Zone 8”;
  • в Чукотском Автономном округе (Чукотка) и Камчатский Край (Камчатка) следует вручную переключиться на часовой пояс “Russia Time Zone 11”.


Ожидаемые проблемы


Ну как без этого:
  • для Windows XP не будет выпущено официальных обновлений для корректировки отображения времени (за исключением редакции Embedded);
  • операционные системы Windows Server 2003 и Windows XP Embedded не будут после установки обновления KB2998527 автоматически перенастроены на новые часовые пояса (даже в случае их автоматической настройки для других ОС);
  • почтовые клиенты Microsoft Outlook до версии 2007 включительно (версии Microsoft Outlook 2010 и более поздние не испытывают подобной проблемы) после перевода времени в два часа ночи 26 октября 2014 года будут некорректно отображать созданные ранее этой даты задания из календаря (время в них сдвинется на час назад), запланированные на дату позже 2х часов ночи 26 октября 2014 года.
  • ADD гадкий МС выпустил кривой патч для Windows XP Embedded и Server 2003. Исправления ожидаются в декабре 2014 года. Или просто после 26 октября снимите галку с параметра „Автоматически переходить на летнее время и обратно“

Начинаем обновляться


Обновление Microsoft Windows XP Professional

Для ХР у нас есть два варианта обновления:
  • превращаем ХР в Embedded;
  • вносим изменения в реестр напрямую.

Превращаем ХР в Embedded
Превращение начинается:
  • запустить редактор реестра на целевой машине и перейти по пути HKEY_LOCAL_MACHINE\SYSTEM\WPA\;
  • выделить раздел WPA правым кликом мышки и выбрать пункт контекстного меню Создать – Раздел;
  • создать раздел с именем PosReady;
  • внутри раздела PosReady создать параметр DWORD с именем Installed и присвоить ему значение 1.

После проведенной модификации на XP можно будет установить исправление kb2998527 от версии Embedded. Взять его можно из, например, каталога Windows Update по ссылке в самом начале.

По окончании установки необходимо вручную изменить часовой пояс. Для Московского времени придется +04:00 Абудаби изменить на +03:00 RTZ 2. Не забудьте проверить, что установлен флажок на „Автоматически переходить на летнее время и обратно“. В ином случае перевод времени будет некорректный. Поэтому если ваша ОС старше 2011 года и на ней сняли этот флажок, обратно он после установки исправления не вернется. Почему так сделала МС — я не понимаю.

После установки исправления от Embedded новые значения в разделе реестра WPA можно удалить. Удалить их можно до ребута. После ребута ОС удалить их не даст. К сожалению, я не могу сказать, на что может повлиять эта ветка реестра еще и/или установка исправления для Embedded.

Вносим изменения в реестр напрямую
Вторым вариантом изменения часовых поясов на Windows XP может быть прямое редактирование реестра. Удобно тогда, когда у вас куча ХР в, например, домене, требующих обновления. Тогда создаете файлы .reg и распространяете их через групповую политику. Для этого необходимо собрать эталонную ХР (например, на виртуалке), превратить ее в Embedded вышеуказанным способом, установить исправление kb2998527, установить корректный текущий часовой пояс и выгрузить две ветки реестра:
  • HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones — база данных часовых поясов
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation — текущий часовой пояс

Сохраните их под названиями (для удобства дальнейшего понимания) 3.reg и 4.reg. Создайте также два файла 1.reg и 2.reg со следующим содержимым соответственно:
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones] — удаляет базу часовых поясов
[-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation] — удаляет значение текущего часового пояса

В итоге у нас будет четыре файла для распространения: 1.reg, 2.reg, 3.reg и 4.reg. В такой последовательности их и надо будет применить. Кстати, таким способом мы получаем два бонуса:
  • не надо забивать голову флажком „автоматический переход на летнее время“ — он будет установлен автоматом
  • не „поедут“ календари в Outlook (об этом ниже)


ADD все параметры из файлов 1.reg, 2.reg, 3.reg и 4.reg можно разместить в одном файле .reg. Так будет удобнее.

Распространение через GPO
Т.к. в среде 2003-ХР установленные предпочтения групповых политик достаточно редки, исправления в реестре будем делать простым скриптом. Для этого создадим файл с расширением .cmd следующего содержания:
@echo off
IF EXIST c:\windows\ok.file (exit) ELSE (regedit /s \\contoso.internal\SYSVOL\contoso.internal\scripts\1.reg & regedit /s \\contoso.internal\SYSVOL\contoso.internal\scripts\2.reg & regedit /s \\contoso.internal\SYSVOL\contoso.internal\scripts\3.reg & regedit /s \\contoso.internal\SYSVOL\contoso.internal\scripts\4.reg & echo. 2>c:\windows\ok.file & tzchange.exe /c “Russian Standard Time”)

Скрипт делает следующее: проверять, есть ли в папке Windows файл ok.file и если он есть, то завершает работу. Скрипт уже выполнялся. Если файла нет, то применяются значения из файлов .reg в указанной последовательности. Не забудьте, что файлы .reg должны быть доступны по сетевому пути. После применения в каталоге Windows создается файл ok.file и выполняется назначение текущего часового пояса, т.к. после изменения в реестре это не произойдет автоматом. Также можно вместо команды tzchange просто ребутнуть ПК (или дать команду shutdown -r). Как кому нравится.

Осталось сделать групповую политику. Идем в редактор групповых политик. Развернуть Computer Configuration – Windows Settings – Scripts. В левой части окна редактирования политики дважды кликнуть по пункту Startup. В окне редактирования свойств пункта Startup нажать кнопку Add и добавить созданный ранее файл .cmd по сетевому пути. Нажать ОК два раза и закрыть окно редактора групповой политики. Применить созданную политику к организационному подразделению, содержащему учетные записи целевых ПК. После перезагрузки целевых ПК политика применится.

Обновление Microsoft Windows 2003 Server

Для Microsoft Windows 2003 выпущено обновление kb2998527. Поэтому основная проблема заключается в том, чтобы перевести часовой пояс куда надо. Понятно, что это можно сделать вручную. А так же удалением значений реестра и добавлением необходимых (например, тем же способом что и для ХР). Для этого на эталонной машине с установленным обновлением и корректным часовым поясом необходимо выгрузить ветку реестра HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation и сохранить ее под именем 2.reg. После чего создать файл 1.reg со следующим содержимым
[-HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation].
Применить вышеуказанным способом через групповую политику к серверам Windows 2003 в указанной последовательности. Сначала файл 1, потом 2. И дальше на выбор или команда смены текущего часового пояса или просто ребут.

Обновление заданий в календаре Outlook 2000-2007

И последняя проблема в разрезе устаревших систем Microsoft, с которой пришлось столкнуться при тестировании переключения на зимнее время, это то, что в заданиях, которые были созданы до перехода на зимнее время на даты позже 26 октября „поехало“ время на час назад. Другими словами то, что было запланировано на 9 утра, стало после установки исправления kb2998527 на даты позже 26 октября запланировано на 8 утра. Что плохо. Кстати, при тестировании на ХР там, где применялись изменения для реестра напрямую (без „превращения“ ОС в Embedded) календари не „поехали“. Там, где ставилось обновление, все как надо — уехали.

Для этого у Microsoft есть утилита. На самом деле их две, одна выполняется на клиенте, другая напрямую на сервере Exchange. Но т.к. то, что выполняется на сервере Exchange может его поломать (и МС на это намекает) безопаснее побегать по машинам, если что, чем колдовать над восстановлением базы. Поэтому я рассмотрю только утилиту, которая выполняется на стороне клиента. Также я не буду рассматривать обновление календарей в служебных почтовых ящиках и общих папках. Все это рассмотрено в статье MS (она будет ниже) и к сути данного поста отношение имеет несколько косвенное.

Календари „едут“ практически на всех ОС после изменения часового пояса с версией Outlook от 2000 до 2007. Почему практически, потому как это стоит проверить. Может быть вам повезет и задачи останутся на месте. Например, в моих экспериментах календари в Outlook 2007 остались корректными в Windows 7. Но официальная позиция МС такая, что указанные версии Outlook „поедут“. Не требуют действий версии Outlook 2010 и 2013. Там все нормально всегда.

Итак, чтобы поправить работу „поехавших“ заданий в календарях, нам необходимо зайти на сайт http://support2.microsoft.com/kb/930879/ru и загрузить или 32-разрядную или 64-разрядную версию пакета средства обновления данных о часовых поясах.С этим никаких проблем нет. Проблема есть в массовом развертывании и в массовом же выполнении. Официально МС говорит буквально следующее „ставьте и запустите“. Что не всегда удобно. Поэтому перед мной появилась задача это все перевести на групповые политики.

В итоге выяснилось, что средство по исправлению календарей — OutlookTimeZoneMove.exe — не более чем архив, который можно расковырять тем же WinRAR. Что и было сделано. Из файла OutlookTimeZoneMove.exe был извлечен файл TZMove.msi. К сожалению, версии для х64 и х86 называются одинаково, поэтому не забудьте переименовать TZMove.msi в TZMove_32.msi и TZMove_64.msi, соответственно.

После этого данные файлы необходимо поместить на сетевую шару, доступную для пользователей домена для чтения и создать групповую политику для распространения. Придется создать две групповых политики и настроить из выполнение на ОС со своей разрядностью (например, через фильтры WMI), но эти настройки выходят за рамки данной статьи.

После создания групповой политики открыть ее на редактирование. Развернуть User Configuration – Software Settings. Кликнуть на пункт Software installation, выбрать пункт контекстного меню New – Package и добавить файл TZMove.msi по сетевому пути. Нажать ОК. В правой части окна редактирования политик выбрать двойным кликом созданный пакет и войти в его свойства. Перейти на закладку Deployment и установить переключатель тип распространения в Assignrd и в переключатель на пункте Install this application at logon.

Нажать ОК закрыть окно редактора групповой политики. Применить созданную политику к организационному подразделению, содержащему учетные записи целевых пользователей. После перезагрузки ПК и входа целевого пользователя средство управления корректировкой заданий в календаре Outlook будет развернуто на целевом ПК для целевого пользователя.

И нам остается это средство только запустить, ибо заставить пользователя сделать это самому достаточно тяжко. Сложность, на первый взгляд, заключается в том, что средство исправление ставится в трех вариантах пути к исполняемому файлу:

  • Для 32x OS — “%PROGRAMFILES%\Microsoft Office\Office12\Office Outlook Time Zone Data Update Tool\tzmove.exe”
  • Для 64х OS — “%PROGRAMFILES(x86)%\Microsoft Office\Office12\Office Outlook Time Zone Data Update Tool\tzmove.exe”
  • Для Outlook 2010 64x — “%PROGRAMFILES%\Microsoft Office\Office14\Time Zone Data Update Tool for Microsoft Outlook\tzmove.exe”

Казалось бы, это проблема. Но на самом деле все оказалось просто. Создаем файл с расширением .cmd и добавляем туда следующее содержимое:
@echo off
IF EXIST "%userprofile%\ok1.file" (exit) ELSE ("%PROGRAMFILES%\Microsoft Office\Office12\Office Outlook Time Zone Data Update Tool\tzmove.exe" /quiet & “%PROGRAMFILES(x86)%\Microsoft Office\Office12\Office Outlook Time Zone Data Update Tool\tzmove.exe” /quiet & “%PROGRAMFILES%\Microsoft Office\Office14\Time Zone Data Update Tool for Microsoft Outlook\tzmove.exe” /quiet echo. 2>"%userprofile%\ok1.file")

Скрипт проверят, есть ли в папке профиля пользователя файл ok1.file и если он есть, скрипт завершает работу (он уже выполнялся). Если же файла нет, то скрипт пытается выполнить в „тихом“ режиме средство по корректировке заданий в календаре пользователя по все трем возможным путям. Один да и сработает. Не путь джедая, но зато быстро реализуется.Потом создает файл ok1.file и завершает работу.

После создания групповой политики открыть ее на редактирование. Развернуть User Configuration – Windows Settings – Scripts. В левой части окна редактирования политики дважды кликнуть по пункту Logon. В окне редактирования свойств пункта Logon нажать кнопку Add и добавить созданный ранее файл .cmd по сетевому пути.
Нажать ОК два раза и закрыть окно редактора групповой политики. Применить созданную политику к организационному подразделению, содержащему учетные записи целевых пользователей.

После перезагрузки целевого ПК входа целевого пользователя будет произведена «тихая» (не требующая взаимодействия с пользователем) корректировка заданий в календаре Outlook.

Вот и все, что я хотел рассказать. Надеюсь, это поможет тем, кто столкнулся с подобной проблемой. Буду рад ответить на вопросы и замечания.

Бонус для тех, кто дочитал до конца:
если вы не знаете, был ли установлен или сброшен флажок на ОС 2003 и ХР, где будут установлено исправление, просто удалите одно значение реестра, распространив файл .reg со следующим содержимым:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
“DisableAutoDaylightTimeSet”=-
Станислав @Just_Wah
карма
66,2
рейтинг 0,0
Хабра сосет
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Спецпроект

Самое читаемое Администрирование

Комментарии (57)

  • +8
    Спасибо тебе, добрый человек. Удивило только слегка, когда увидел у себя пояс +6.
  • +39
    Такое ощущение, что где-то трудится НИИ перевода времени и часовых поясов, нельзя же их без работы оставить, в самом-то деле.
    • +10
      Рассекречено местонахождение этого НИИ — рядом с бешеным принтером :3
    • +2
      www.youtube.com/watch?v=-5wpm-gesOY
      Проблема времени и временных зон. Мужчина в течении 10 минут рассказывает, почему вы не хотите писать код, анализирующий таймзоны.
  • +2
    Интересно, Europe/Moscow работать будет?
  • 0
    Скажите, а почему «сейчас», разница МСК со временем «Зимой» от CET (центральное европейское время): +3 часа?

    До отмены перехода на зимнее/летнее время было: Зима (CET +2), Лето (CEST +2)
    После отмены перехода стало (до 26 октября 2014): Зима (CET +3), Лето (CEST +2)

    Как будет после 26 октября 2014? По логике, должен добавиться час и в Европе и в России, поэтому разница не должна быть больше, чем 2 часа. Как получилось — Зима (CET+2), Лето (CEST +1)?

    Запутался :(
    • +2
      сейчас разница +4 по МСК. Будет +3 после 26.11.14. После применения обновления будет актуальна поправка на «летнее время» — +1. Т.е. мы переключившись до 26.11.14 на RTZ 2 будем в часовом поясе +3 в летнем времени (еще +1). После 26.11.14 часовой пояс МСК перейдет на «зимнее время» и +1 исчезнет. В очередной раз навсегда.
      • 0
        Сейчас

        Амстердам: 15:25
        Москва: 17:25 (+2)

        Прошлой зимой (2013)
        Амстердам: 14:25 — (-1 час от летнего «сейчас»)
        Москва: 17:25 (+3) — не перевели стрелки час назад

        Как у вас получилось сейчас +4?
        • 0
          может быть мы друг друга не понимаем? https://ru.wikipedia.org/wiki/UTC%2B04:00
          • 0
            Скажите, а почему «сейчас», разница МСК со временем «Зимой» от CET (центральное европейское время)


            Я оперирую терминами и цифрами картинки с Лента.ру, т.е. про разницу времени в Москве, со временем Central European Time. Вы же говорите про UTC (Coordinated Universal Time).
            • +1
              картинка про часовые пояса относительно Москвы. И для демонстрации тех 11 часовых поясов, которые нас ждут. Не более.
              • +1
                Хорошо, хоршо. Я понял это. Я всего лишь хотел поинтересоваться на тему ЧАСТИ картинки. Я ее выделил здесь:

                image

                Для меня важно знать временную разницу CET <-> MSK. Поэтому вопрос к вам и знатокам был: все ли верно указано на этой картинке, относительно разницы времени в Москве с европейским (ПАРИЖ, БЕРЛИН, РИМ). До и После. Выглядит, как неверно.
                • +10
                  смотрите, как я это вижу. Сейчас в Германии летнее время. Разница с МСК 2 часа. 26 октября Германия переходит на зимнее время (на час назад), но и мы переходим на него же. Разница в 2 часа сохранится. 29 марта Германия снова переходит на летнее время — на час вперед. Но мы не переходим. Значит разница будет +1. Как и указано на картинке. Поправьте меня, если что не так.
                  • 0
                    Теперь ясно.

                    Я неверно интерпретировал событие. Я думал, что мы включаем зимнее и летнее время (переключение), как было, скажем, 4 года назад. Т.е. в марте переведемся на летнее время.

                    Ан нет, оказывается, речь идет не о возврате механизма перехода (зима, лета), а о фиксированном времени (как в данный момент), только на 1 час меньше.

                    Получается, летом время в Финляндии, Эстонии,… разницы во времени с РФ не будет. По сути, летом это будет EEST (Eastern European Summer Time), грубо говоря :)
      • 0
        То есть если применять это хозяйство в ночь на 26-е, то галочка перехода на летнее время неактуальна?

        А то как сглюканёт оно в следующем году…
        • 0
          Скорее всего, еще одно обновление выйдет, которое зафиксирует переведенный часовой пояс.
  • +4
    Я помню, что для ряда областей существовал обходной способ, состоявший в указании времени некоторой другой (более южной) страны, в которой никогда не переводят стрелки.

    Для Москвы это был Абу-Даби (GMT+4), а теперь, надо думать, это будет Кувейт (GMT+3).

    Судьба, как поговаривал Морфеус, не лишена иронии: ну не с Кувейтом ли я сравнивал итоги правительственных реформ в Интернете, нацеленных на ущемление анимешников? С Кувейтом, именно с Кувейтом; правда, было это до тех пор, покуда не стало понятно, что движение от кувейтского уровня непременно продолжится дальше, продолжится в северокорейском направлении, и даже там нет ещё никакой надежды на остановку его.
  • 0
    На работе вин 7 перевела часы заранее, т.е. вчера, дома на 8.1 все нормально, у кого еще было такое? С чем это может быть связано?
    • 0
      Была такая проблема. Решил установкой галочки «Автоматический переход на летнее время и обратно». Без этой галки, показывает время на час меньше.
  • +3
    А нельзя ли эти 3.reg и 4.reg выложить сюда? Или могут быть какие-то последствия при несовпадении версий ОС?
    • +3
      Можно и даже нужно. С другой стороны, ставить непонятно что — не хорошо. А с ещё более другой — там всё тривиально, и перед установком можно глазами эти reg-файлы посмотреть, чтобы убедиться, что Вам именно часовые пояса дали, а не трояна.
  • 0
    полезная статья
  • 0
    Спасибо, Станислав.
    Не придется изобретать велосипед :)

    По поводу Exchange Calendar Update Configuration Tool: средство бесполезно. Если открыть файл readme, идущий в дистрибутиве, там явно сказано, что эффект будет только для событий, созданных в Outlook старше, чем 2007.
    • 0
      я проверял на 2007 Outlook.
  • 0
    «Спасибо» MS за отказ поддерживать XP даже в таких важных моментах. Причем ладно бы много труда было, а то ж для Embeded все равно сделали. Ко всему, энтузиасты соберут патчи реестра быстро, чем еще раз докажут, что не сильно оно было и трудно/дорого.

    Серьезно, я понимаю, когда нашли дыру, из-за которой надо патчить половину ОС — тут трудозатраты такие, что проще сказать, мол, мы XP не можем бесконечно поддерживать. Но не поддержать переход на новую схему часовых поясов?! Вроде как юзер виноват, что отдал деньги за ОС, которую (в тот момент) называли лучшей. А на выходе полмира живут с неправильными поясами, и крайним оказывается «бедный» прикладной софт, в этой каше вынужденный разбираться. Outlook вот не особо смог.

    P.S. Когда обновлений пакетов tzdate ждать-то, интересно? Оно ж, обновление-то, не за час разлить на сервера…
    • +2
      Я могу ошибаться, но мне кажется, что прекращение поддержки продукта означает прекращение его разработки. Опять же, как Я ПРЕДПОЛАГАЮ (знать не могу, гуглить лень) — отдел ХР могли переквалифицировать на более свежие версии ОС или частично распустить вообще.
      • +1
        Да, но сделать пакет обновления для XP, и в нем, условно говоря, добавить проверку на «встроенность» XP, от которой и решать, встанет ли пакет на машину… Сволочизм это, вот что. Добро причиняют, ага, чтобы юзер не забыл, что лично для него, ретрограда, часы не будут переведены.
        • +1
          Это не «сволочизм», а «умение считать деньги». Основные затраты при поддержке OS — это даже не время на разработку патчей, а затраты на общение с пользователями. Даже если оно «сглюкнёт» у одного пользователя из нескольких тысяч — это всё равно породит весьма заметное количество телефонных звонков и связанных с этим затрат. Особенно в случае когда точно известно, что некоторые программы начинают в результате установи обновления не совсем правильно себя вести.

          Решение — лежит на поверхности: сделать так, чтобы обновление нельзя было поставить не осознав то, что это обновление — не для вас. Что и было проделано. Где вы видите «сволочизм»?
  • +1
    Вы просто молодец! Спасибо вам огромное, сэкономили коллегам кучу человек-часов на изучение\тестирование\внедрение.
  • +2
    reg файлик для xp, 2000, 2003
    www.vottak.info/wp-content/uploads/TZ_Windows2003-XP-2000.zip
    • 0
      Ценная штука.

      Однако в этом файле зоны названы по-английски, а не по-русски, если не ошибаюсь.
      • 0
        Вот по-русски 3.reg и 4.reg.
        Выдрано из XP, превращённой в Embedded, после патча и перестановки зоны в «GMT+3 Волгоград, Москва, Санкт-Петербург (RTZ 2)» + галка «Автоматический переход на летнее время и обратно»
  • +1
    Для Windows, которые сейчас трудятся с в часовом поясе +3. Если машина стоит далеко, но можно подключится Telnet'ом, вводим команду:
    RunDLL32.exe shell32.dll,Control_RunDLL timedate.cpl,,/Z Russian Standard Time
    Часовой пояс становится +4, и активна галочка автоматический перевод на зимнее время. Таким образом, время переведётся в час Икс корректно. Потом главное не забыть снять галочку.

    Далее осталось проверить что часовой пояс изменился:
    reg query HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation

    Для машин в других часовых поясах, указать соответственно свой часовой пояс. Список корректных названий часовых зон тут:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones
  • +1
    Обнаружил проблему новых часовых поясов с ExtJS под Chrome, а также NodeJS.

    После перехода на время RTZ6 (Красноярск) перестал корректно работать в Chrome и NodeJS следующий код:
    var d = new Date('01.01.2008 23:45:00'); console.log(d); d.setMinutes(60); console.log(d);

    Проблема с любым високосным годом.
    Подобный код используется в ExtJS для Ext.form.field.Time и вызывает зависание страницы Chrome с объеданием огромного объема памяти.

    Также заметна проблема выбора даты 01.01.2014 и других 01.01 для високосных лет в поля ввода даты (Ext.form.field.Date).
    • 0
      Об этакой проблеме неплохо было бы сообщить разработчикам, и рекомендую сообщить.
  • +1
    После применения патча часовой пояс сменился на "(GMT+05:00) Екатеринбург (RTZ4)" с галочкой «Автоматический переход на летнее время и обратно».
    Текущий часовой пояс стал RTZ 4 (лето).

    Попробовал поменять время и дату. Выяснил следующее.

    26 октября 2014 в 02:00 произошел переход на зимнее время (-1 час).
    Текущий часовой пояс стал RTZ 4 (зима).
    Галочка «Автоматический переход на летнее время и обратно» никуда не исчезла.

    6 января 2015 в 00:00 произошел переход на летнее время (+1 час).
    Текущий часовой пояс стал RTZ 4 (лето).

    У всех воспроизводится данный баг? Либо для Windows XP Embedded выйдет после 26 октября еще одно обновление насчет часовых поясов?
    Хотя конечно можно убрать после 26 октября галочку «Автоматический переход на летнее время и обратно».
    • +1
      наблюдения показывают, что винда как-то плохо относится к переводу времени руками. Например, если поставить 26.10.14 в 01:59, то в 02:00 время перейдет на час назад на 01:00. Если после этого опять руками перевести на 01:59, то в 02:00 время опять перейдет на 01:00. Если подождать час, такого не произойдет
    • 0
      Патч для Windows 2003 Server ведет себя точно также.
      В полночь с 6 на 7 января 2015 произошел переход на летнее время (+1 час).
      • 0
        очень интересное наблюдение, коллега. Спасибо. Думаю, это повод обратиться в МС за разъяснениями.
      • 0
        да, это проблема МС. Вот что они пишут (источник тыц)

        Incorrect DST settings for future years on Windows Server 2003 and Windows XP Embedded

        If users install this update on Windows Server 2003 or Windows XP Embedded, their systems will continue to use the DST settings for 2014 even after the calendar year changes. This can cause the system to display the time incorrectly.

        To resolve this problem, users should install the December Cumulative Update (scheduled to be released in December, 2014) before the calendar year changes. After users install both the Russian time zone update and the December Cumulative Update, their systems will apply the correct DST settings and continue to display the correct time after the end of the 2014 calendar year.

        Ждем декабрь. Как говорилось в одном старом фильме, где мужчины носили шпаги и шляпы с перьями «Приключения продолжаются».
        • 0
          а у меня в гугл-календаре некоторые повторяющиеся задачи сдвинулись на час вперед после 26 октября почему-то… а некоторые не сдвинулись…
    • 0
      как «костыль» видится решение с .reg файлом, который добавит в реестр
      [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
      “DisableAutoDaylightTimeSet”=1

      выполнять в ноябре.
  • –2
    >2014
    >Windows XP
    Закрыл вкладку.
    • +4
      Чувствуется, что человек в глаза не видел всяческих гос. контор и прочего корпоративного бизнеса.
      • –3
        Я просто не понимаю всей этой возни, если уже давным-давно в Windows есть такая вещь, как синхронизация времени рабочих станций с контроллером домена. А уж на нём-то два раза в год сменить дату, по-моему, вообще не проблема. Можно даже не вручную, а элементарно написать скрипт, поставить его в планировщик… ну Вы поняли.
        • +1
          если говорить по существу, то время вообще не изменяется. Изменяется локальная (для рабочей станции) поправка смещения на местное (для рабочей станции) время. Поэтому синхронизация времени с доменом тут вообще никак не участвует.
          Также рекомендую внимательно прочитать статью. В ней говорится еще и о том, что в России будет не 9 часовых зон, а 11. Как вы собираетесь это менять через «элементарный скрипт»?
  • 0
    Блинский блин.

    У меня на часа календарь и часовые зоны японцы захардкодили до 31.12.2099.

    Со всей этой свистопляской (пусть даже логичной), пользоваться индикациями часовых поясов «с запястья» становится затруднительнее необходимого.
    • 0
      А когда хардкодили то? )
      А то совсем недавно еще было летнее/зимнее время…
  • 0
    Для Outlook правильно запускать tzmove с ключами /PHYSICALMOVE /TO:<TIMEZONE_REGISTRYNAME>/FROM:<TIMEZONE_REGISTRYNAME> /QUIET, причем перед этим необходимо на пользовательские машины импортировать ветку в реестр со старой таймзоной, предварительно обозвав ее как-нибудь по другому (Russian Standard Time (UTC+4)).
  • +1
    А что с расписаниями поездов будет?
    Первый раз как раз еду и как раз вечером 26го )
    Я так понимаю по новому времени будут ходить уже?
    Посадка на промежуточной станции если что, не конечной…
    • 0
      будет точно так же, как и было до этого 20 лет. С авиакомпаниями все иначе: Аэрофлот сдвигает все российское расписание на час назад, все остальные сдвигают на час вперед европейское.
  • +1
    Если для обычных граждан это лишь лишний час поспать

    Не только. Моим родителям пришлось 300 руб. заплатить, чтобы им электросчетчик перепрограммировали + сходить ножками по инстанциям.
    • 0
      При прошлом переводе (на UTC+4 круглогодично) многие вроде без последствий не стали перепрограммировать )
    • 0
      Расскажите, пожалуйста, подробнее? Счетчик какой-то особенный, с часами и прочим? Просто не могу до сих пор представить, как это выглядит. У меня тоже счетчик, тоже электро, и вроде даже дисплей есть. Но программировать в моем точно нечего.
      • 0
        Счетчик двухтарифный типа Меркурий-200, считает потребление раздельно ночью (23:00-07:00) и днём. Естественно, без внутренних часов ему не обойтись.
  • +1
    Все, кто продолжает использовать XP в 2015 году, в дополнение к данной статье должны выполнить команду tzchange /w 2015.
    • 0
      На днях потребовалось обновить часовые пояса в нескольких виртуальных машинах — Windows 7, XP. Хост — 8.1. Установил на восьмёрку кумулятивный пакет обновления от августа-2015, открыл regedit, сделал экспорт нужной ветки. И семёрка, и ХР проглотили без проблем.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.