Обновление часовых поясов для windows server 2012 r2 скачать

Описывает обновление, которое изменяет данные часового пояса для России.

Windows Server 2012 R2 Datacenter Windows Server 2012 R2 Standard Windows Server 2012 R2 Essentials Windows Server 2012 R2 Foundation Windows 8.1 Enterprise Windows 8.1 Pro Windows 8.1 Windows Server 2012 Datacenter Windows Server 2012 Datacenter Windows Server 2012 Standard Windows Server 2012 Standard Windows Server 2012 Essentials Windows Server 2012 Foundation Windows Server 2012 Foundation Windows 8 Enterprise Windows 8 Pro Windows 8 Windows Server 2008 R2 Datacenter Windows Server 2008 R2 Enterprise Windows Server 2008 R2 Standard Windows Server 2008 R2 Foundation Windows 7 Ultimate Windows 7 Enterprise Windows 7 Professional Windows 7 Home Premium Windows 7 Home Basic Windows 7 Starter Windows Server 2008 Datacenter Windows Server 2008 Enterprise Windows Server 2008 Standard Windows Server 2008 Foundation Windows Vista Ultimate Windows Vista Enterprise Windows Vista Business Windows Vista Home Premium Windows Vista Home Basic Windows Vista Starter Windows Embedded POSReady 2009 Windows Embedded Standard 7 Еще…Меньше

Обзор

В соответствии с недавно принятым законодательством в следующих областях России запланирована смена часовых поясов 27 марта 2016, в 02:00 по местному времени. Корпорация Майкрософт выпустила обновление для Windows, выпущенное Вторник, 12 апреля 2016, чтобы отразить эти изменения.

Регион

Старое смещение часового пояса

Новое смещение часового пояса

Астраханская область

UTC+3

UTC+4

Ульяновская область

UTC+3

UTC+4

Алтайский край

UTC+6

UTC+7

Республика Алтай

UTC+6

UTC+7

Забайкальский край

UTC+8

UTC+9

Сахалинская область

UTC+10

UTC+11

Решение

  • Обновление, описанное в данной статье изменяет данные о часовом поясе в соответствии с изменениями летнего времени (DST) в некоторых странах.

    Это накопительный пакет обновления, включающий все предыдущие изменения часового пояса Windows. Дополнительные сведения о том как изменения периода летнего времени может повлиять на другие продукты Майкрософт можно узнать если перейти на следующие веб-узлы корпорации Майкрософт:

    Общие сведения о переходе на летнее время

    914387 Как настроить летнее время для операционных систем Microsoft Windows

  • При применении этого обновления может появиться сообщение, подобное приведенному ниже:

    Не удается установить обновление, так как более новое или такое же обновление временных зон уже было установлено в системе.Это сообщение указывает, что правильное обновление уже было установлено либо Центр обновления Windows или Центр обновления Майкрософт установил это обновление автоматически. Необходимости дополнительных действий для обновления операционной системы Windows нет.

Как получить это обновлениеСледующие файлы доступны для загрузки и установки на веб-узле центра загрузки Майкрософт.

Операционная система

Обновление

Для всех поддерживаемых 86-разрядных версий Windows 8.1

Download
Скачать пакет.

Для всех поддерживаемых 64-разрядных версий Windows 8.1

Download
Скачать пакет.

Для всех поддерживаемых 64-разрядных версий Windows Server 2012 R2

Download
Скачать пакет.

Для всех поддерживаемых 64-разрядных версий Windows Server 2012

Download
Скачать пакет.

Для всех поддерживаемых 86-разрядных версий Windows 7

Download
Скачать пакет.

Для всех поддерживаемых 64-разрядных версий Windows 7

Download
Скачать пакет.

Для всех поддерживаемых 64-разрядных версий Windows Server 2008 R2

Download
Скачать пакет.

Всех поддерживаемых версий Windows Server 2008 R2

Download
Скачать пакет.

Для всех поддерживаемых 86-разрядных версий Windows Vista

Download
Скачать пакет.

Для всех поддерживаемых 64-разрядных версий Windows Vista

Download
Скачать пакет.

Для всех поддерживаемых 86-разрядных версий Windows Server 2008

Download
Скачать пакет.

Для всех поддерживаемых 64-разрядных версий Windows Server 2008

Download
Скачать пакет.

Всех поддерживаемых версий Windows Server 2008 для систем на базе процессоров IA

Download
Скачать пакет.

Дополнительные сведения о том, как загрузить файлы поддержки Майкрософт щелкните следующий номер статьи, чтобы перейти к статье базы знаний Майкрософт:

Корпорация Майкрософт проверила эти файлы на наличие вирусов. Корпорация Майкрософт использует последние версии антивирусного программного обеспечения на дату опубликования файлов. Файлы хранятся на защищенных серверах, что предотвращает несанкционированное изменение файлов.

Предварительные условияWindows 8.1 и Windows Server 2012 R2

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

2919355 обновления Windows RT 8.1, Windows 8.1 и Windows Server 2012 R2: апреля 2014 гWindows Server 2012 и Windows 8

Нет предварительных компонентов, которые необходимы для установки этого обновления.

Windows 7 и Windows Server 2008 R2

Нет предварительных компонентов, которые необходимы для установки этого обновления. Тот же пакет устанавливает на RTM-версии и версии Windows 7 и Windows Server 2008 R2 Пакет обновления 1. Дополнительные сведения о получении пакета обновления Windows Server 2008 R2 или Windows 7 щелкните следующий номер статьи, чтобы перейти к статье базы знаний Майкрософт:

968849 как получить последний пакет обновления для Windows Server 2008

Сведения о реестреЧтобы применить это обновление, не нужно вносить изменения в реестр.

Необходимость перезагрузкиПосле установки накопительного обновления, необходимо перезагрузить компьютер.

Изменения данных часового пояса Windows

Это обновление включает следующие изменения и дополнения. После установки обновления пользователи в уязвимых регионах можно переключиться на эти новые часовые пояса.

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

Астраханская и Ульяновская области

Ключ / ID часового пояса

Астраханское время (зима)

Отображаемое имя (на английском языке)

(UTC + 04:00) Астрахань, Ульяновск

Смещение часового пояса (до перехода)

UTC+3

Смещение часового пояса (после перехода)

UTC+4

Республика Алтай и Алтайский край

Ключ / ID часового пояса

Алтайская время (зима)

Отображаемое имя английского языка

(UTC + 07:00) Barnaul Gorno Altaysk

Смещение часового пояса (до перехода)

UTC+6

Смещение часового пояса (после перехода)

UTC+7

Забайкальский край

Ключ / ID часового пояса

Трансбайкальское время (зима)

Отображаемое имя английского языка

(UTC+09:00) Chita

Смещение часового пояса (до перехода)

UTC+8

Смещение часового пояса (после перехода)

UTC+9

Сахалинская область

Ключ / ID часового пояса

Сахалинское время (зима)

Отображаемое имя английского языка

(UTC 10:00) Сахалинской

Смещение часового пояса (до перехода)

UTC+10

Смещение часового пояса (после перехода)

UTC+11

Изменения в существующие часовые поясаЭти изменения затрагивают только отображаемое имя. Изменения времени не будут реализованы.

Ключ / ID часового пояса

Старое название

Новое отображаемое название

Калининградское время (зима)

(UTC + 02:00) Калининград (RTZ 1)

(UTC + 02:00) Калининград

Московское время (зима)

(UTC + 03:00) Москва, Санкт-Петербург, Волгоград (RTZ 2)

(UTC + 03:00) Москва, Санкт-Петербург, Волгоград

Часовой пояс России 3

(UTC + 04:00) Ижевск, Самара (RTZ 3)

(UTC + 04:00) Ижевск, Самара

Уральское время (зима)

(UTC + 05:00) Екатеринбург (RTZ 4)

(UTC + 05:00) Екатеринбург

Северная Центральная Азия (зима)

(UTC+06:00) Новосибирск (RTZ 5)

(UTC+06:00) Новосибирск

Красноярское время (зима)

(UTC + 07:00) Красноярск (RTZ 6)

(UTC + 07:00) Красноярск

Иркутское время (зима)

(UTC + 08:00) Иркутск (RTZ 7)

(UTC + 08:00) Иркутск

Якутское время (зима)

(UTC+09:00) Якутское (RTZ 8)

(UTC+09:00) Якутск

Владивосток (зима)

(UTC+10:00) Владивосток, Магадан (RTZ 9)

(UTC+10:00) Владивосток

Часовой пояс России 10

(UTC 10:00) Чокурдах (RTZ 10)

(UTC 10:00) Чокурдах

Часовой пояс России 11

(UTC + 12:00) (UTC+12:00) Анадырь, Петропавловск-Камчатский (RTZ 11)

(UTC + 12:00) Анадырь, Петропавловск-Камчатский

Сведения о файлахДля получения списка файлов, включенных в данное обновление, загрузите информацию о файле для обновления 3148851.

Ссылки

Для получения заявления об официальной политике в отношении этих изменений, обратитесь к следующей статье блога Microsoft «Летнее время и часовой пояс» :

Летнее время Справка и поддержка

Нужна дополнительная помощь?

Обновление часовых поясов 2014 и обновление компьютеров с ОС Windows

  • Содержание статьи
    • Windows Server 2012 R2
    • Windows 8.1
    • Windows Server 2012
    • Windows 8
    • Windows Server 2008 R2
    • Windows 7
    • Windows Embedded Standard 7
    • Windows Server 2008
    • Windows Vista
    • Windows Server 2003
    • Windows XP
    • Добавить комментарий

Ниже описаны способы обновления компьютеров под управлением Windows для корректной работы после перевода часов в октябре 2014.

С более менее современными операционными системами от Microsoft все просто — достаточно скачать нужное вам обновление и установить его. Для пользователей устаревшей Windows XP посложнее, однако и для неё ниже описан способ обновления.

Прямые ссылки для скачивания обновления KB2998527 от Microsoft для своих операционных систем:

Windows Server 2012 R2

Обновление для Windows Server 2012 R2 (Windows8.1-KB2998527-x64.msu):
http://download.microsoft.com/download/3/4/9/3494F561-7688-41F1-96C9-5C553742CCC8/Windows8.1-KB2998527-x64.msu

Windows 8.1

Обновление для Windows 8.1 (x86) (Windows8.1-KB2998527-x86.msu):
http://download.microsoft.com/download/7/2/F/72F35CAC-22C1-4A17-A988-E08297BA3E82/Windows8.1-KB2998527-x86.msu

Обновление для Windows 8.1 (x64) (Windows8.1-KB2998527-x64.msu):
http://download.microsoft.com/download/2/5/3/25367A11-3EED-467D-B2CA-7E41C52F3BF7/Windows8.1-KB2998527-x64.msu

Windows Server 2012

Обновление для Windows Server 2012 (Windows8-RT-KB2998527-x64.msu):
http://download.microsoft.com/download/0/1/4/0147ECCE-2B6F-4D5F-9CBF-AA9289DB97E8/Windows8-RT-KB2998527-x64.msu

Windows 8

Обновление для Windows 8 (x86) (Windows8-RT-KB2998527-x86.msu):
http://download.microsoft.com/download/F/E/8/FE8CAA58-4FFA-4407-9870-D4960F2F03DC/Windows8-RT-KB2998527-x86.msu

Обновление для Windows 8 (x64) (Windows8-RT-KB2998527-x64.msu):
http://download.microsoft.com/download/6/2/7/627399F2-AE5D-4E80-A261-2551F444C91C/Windows8-RT-KB2998527-x64.msu

Windows Server 2008 R2

Обновление для Windows Server 2008 R2 (Windows6.1-KB2998527-x64.msu):
http://download.microsoft.com/download/8/7/0/870DBC55-B223-4C2C-B252-05BF10F012A1/Windows6.1-KB2998527-x64.msu

Обновление для Windows Server 2008 R2 (Itanium) (Windows6.1-KB2998527-ia64.msu):
http://download.microsoft.com/download/6/4/5/6456935B-EC29-4325-A919-FDEC23D449A2/Windows6.1-KB2998527-ia64.msu

Windows 7

Обновление для Windows 7 (x86) (Windows6.1-KB2998527-x86.msu):
http://download.microsoft.com/download/2/5/5/2558564D-3E95-42A1-9CDB-F5E865544279/Windows6.1-KB2998527-x86.msu

Обновление для Windows 7 (x64) (Windows6.1-KB2998527-x64.msu):
http://download.microsoft.com/download/2/9/A/29A88150-B0F5-4607-9AF2-162D3F2262AC/Windows6.1-KB2998527-x64.msu

Windows Embedded Standard 7

Обновление для Windows Embedded Standard 7 (x86) (Windows6.1-KB2998527-x86.msu):
http://download.microsoft.com/download/C/D/B/CDB68783-3A75-463D-BBA6-435863330648/Windows6.1-KB2998527-x86.msu

Обновление для Windows Embedded Standard 7 (x64) (Windows6.1-KB2998527-x64.msu):
http://download.microsoft.com/download/8/9/B/89BA897F-A132-4DDB-93A4-F06FC597935E/Windows6.1-KB2998527-x64.msu

Windows Server 2008

Обновление для Windows Server 2008 (x64) (Windows6.0-KB2998527-x64.msu):
http://download.microsoft.com/download/0/6/D/06D45DE7-D629-49F1-AE77-3B617F1D9767/Windows6.0-KB2998527-x64.msu

Обновление для Windows Server 2008 (x86) (Windows6.0-KB2998527-x86.msu):
http://download.microsoft.com/download/8/7/F/87F7806E-1485-41A4-B40E-3608043DBC1A/Windows6.0-KB2998527-x86.msu

Обновление для Windows Server 2008 (Itanium) (Windows6.0-KB2998527-ia64.msu):
http://download.microsoft.com/download/E/7/3/E73957C1-28C4-4B15-BBBD-FEA1CB0A29FD/Windows6.0-KB2998527-ia64.msu

Windows Vista

Обновление для Windows Vista (x64) (Windows6.0-KB2998527-x64.msu):
http://download.microsoft.com/download/5/5/6/556ABD30-F381-4B53-AD63-86B29F8E8F85/Windows6.0-KB2998527-x64.msu

Обновление для Windows Vista (x86) (Windows6.0-KB2998527-x86.msu):
http://download.microsoft.com/download/6/F/C/6FC3883B-8340-414B-9CF2-D9A378DE087A/Windows6.0-KB2998527-x86.msu

Windows Server 2003

Обновление для Windows Server 2003 (x86) (WindowsServer2003-KB2998527-x86-ENU.exe):
http://download.microsoft.com/download/E/3/6/E3694C5B-D3D4-437C-9DAE-F5348622FCC1/WindowsServer2003-KB2998527-x86-ENU.exe
Обновление для Windows Server 2003 (x64) (WindowsServer2003-KB2998527-x64-ENU.exe):
http://download.microsoft.com/download/0/E/A/0EA3E204-A610-4E10-98CE-A0B3C9EE25AA/WindowsServer2003-KB2998527-x64-ENU.exe

Обновление для Windows Server 2003 (Itanium) (WindowsServer2003-KB2998527-ia64-ENU.exe):
http://download.microsoft.com/download/A/4/C/A4CE7BDD-096D-49F9-A941-B6EFFF83BC63/WindowsServer2003-KB2998527-ia64-ENU.exe

Windows XP

Так как поддержка Windows XP закончилась в апреле 2014 года, то обновления от Microsoft обошли её стороной. Похожая проблема и у пользователей Windows 10 Technical Preview — так как новая ОС находится только в стадии тестирования, и поэтому никаких обновлений часовых поясов для неё нет. Однако народные умельцы уже сделали небольшой reg файл, который обновляет информацию о часовых поясах в системе.

Скачать его можно по этой ссылке ниже, или создать самому:

Обновление часовых поясов 2014

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesBelarus Standard Time]
"MUI_Display"="@tzres.dll,-1970"
"TZI"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"Std"="Беларусь (зима)"
"MUI_Std"="@tzres.dll,-1972"
"Dlt"="Беларусь (лето)"
"MUI_Dlt"="@tzres.dll,-1971"
"Display"="(UTC+03:00) Минск"

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesBelarus Standard TimeDynamic DST]
"2010"=hex:88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,03,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"2011"=hex:88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,01,00,06,00,01,00,00,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"FirstEntry"=dword:000007da
"LastEntry"=dword:000007dc
"2012"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesEkaterinburg Standard Time]
"MUI_Display"="@tzres.dll,-1840"
"TZI"=hex:d4,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,00,
  00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"Std"="RTZ 4 (зима)"
"MUI_Std"="@tzres.dll,-1842"
"Dlt"="RTZ 4 (лето)"
"MUI_Dlt"="@tzres.dll,-1841"
"Display"="(UTC+05:00) Екатеринбург (RTZ 4)"

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesEkaterinburg Standard TimeDynamic DST]
"2010"=hex:d4,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,03,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"2011"=hex:d4,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,01,00,06,00,01,00,00,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"FirstEntry"=dword:000007da
"LastEntry"=dword:000007df
"2012"=hex:98,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2014"=hex:d4,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,
  00,00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"2015"=hex:d4,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2013"=hex:98,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesKaliningrad Standard Time]
"MUI_Display"="@tzres.dll,-1820"
"TZI"=hex:88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,00,
  00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"Std"="RTZ 1 (зима)"
"MUI_Std"="@tzres.dll,-1822"
"Dlt"="RTZ 1 (лето)"
"MUI_Dlt"="@tzres.dll,-1821"
"Display"="(UTC+02:00) Калининград (RTZ 1)"

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesKaliningrad Standard TimeDynamic DST]
"2010"=hex:88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,03,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"2011"=hex:88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,01,00,06,00,01,00,00,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"FirstEntry"=dword:000007da
"LastEntry"=dword:000007df
"2012"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2014"=hex:88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,
  00,00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"2015"=hex:88,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2013"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

[-HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesKamchatka Standard Time]

[-HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesMagadan Standard Time]

[-HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesMagadan Standard TimeDynamic DST]

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesN. Central Asia Standard Time]
"MUI_Display"="@tzres.dll,-1850"
"TZI"=hex:98,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,00,
  00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"Std"="RTZ 5 (зима)"
"MUI_Std"="@tzres.dll,-1852"
"Dlt"="RTZ 5 (лето)"
"MUI_Dlt"="@tzres.dll,-1851"
"Display"="(UTC+06:00) Новосибирск (RTZ 5)"

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesN. Central Asia Standard TimeDynamic DST]
"2010"=hex:98,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,03,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"2011"=hex:98,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,01,00,06,00,01,00,00,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"FirstEntry"=dword:000007da
"LastEntry"=dword:000007df
"2012"=hex:5c,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2014"=hex:98,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,
  00,00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"2015"=hex:98,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2013"=hex:5c,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesNorth Asia East Standard Time]
"MUI_Display"="@tzres.dll,-1870"
"TZI"=hex:20,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,00,
  00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"Std"="RTZ 7 (зима)"
"MUI_Std"="@tzres.dll,-1872"
"Dlt"="RTZ 7 (лето)"
"MUI_Dlt"="@tzres.dll,-1871"
"Display"="(UTC+08:00) Иркутск (RTZ 7)"

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesNorth Asia East Standard TimeDynamic DST]
"2010"=hex:20,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,03,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"2011"=hex:20,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,01,00,06,00,01,00,00,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"FirstEntry"=dword:000007da
"LastEntry"=dword:000007df
"2012"=hex:e4,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2014"=hex:20,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,
  00,00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"2015"=hex:20,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2013"=hex:e4,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesNorth Asia Standard Time]
"MUI_Display"="@tzres.dll,-1860"
"TZI"=hex:5c,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,00,
  00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"Std"="RTZ 6 (зима)"
"MUI_Std"="@tzres.dll,-1862"
"Dlt"="RTZ 6 (лето)"
"MUI_Dlt"="@tzres.dll,-1861"
"Display"="(UTC+07:00) Красноярск (RTZ 6)"

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesNorth Asia Standard TimeDynamic DST]
"2010"=hex:5c,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,03,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"2011"=hex:5c,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,01,00,06,00,01,00,00,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"FirstEntry"=dword:000007da
"LastEntry"=dword:000007df
"2012"=hex:20,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2014"=hex:5c,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,
  00,00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"2015"=hex:5c,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2013"=hex:20,fe,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesRussia Time Zone 10]
"MUI_Display"="@tzres.dll,-1910"
"TZI"=hex:6c,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"Std"="RTZ 10 (зима)"
"MUI_Std"="@tzres.dll,-1912"
"Dlt"="RTZ 10 (лето)"
"MUI_Dlt"="@tzres.dll,-1911"
"Display"="(UTC+11:00) Чокурдах (RTZ 10)"

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesRussia Time Zone 11]
"MUI_Display"="@tzres.dll,-1930"
"TZI"=hex:30,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"Std"="RTZ 11 (зима)"
"MUI_Std"="@tzres.dll,-1932"
"Dlt"="RTZ 11 (лето)"
"MUI_Dlt"="@tzres.dll,-1931"
"Display"="(UTC+12:00) Анадырь, Петропавловск-Камчатский (RTZ 11)"

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesRussia Time Zone 3]
"MUI_Display"="@tzres.dll,-1890"
"TZI"=hex:10,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"Std"="RTZ 3 (зима)"
"MUI_Std"="@tzres.dll,-1892"
"Dlt"="RTZ 3 (лето)"
"MUI_Dlt"="@tzres.dll,-1891"
"Display"="(UTC+04:00) Ижевск, Самара (RTZ 3)"

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesRussian Standard Time]
"MUI_Display"="@tzres.dll,-1830"
"TZI"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,00,
  00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"Std"="RTZ 2 (зима)"
"MUI_Std"="@tzres.dll,-1832"
"Dlt"="RTZ 2 (лето)"
"MUI_Dlt"="@tzres.dll,-1831"
"Display"="(UTC+03:00) Волгоград, Москва, Санкт-Петербург (RTZ 2)"

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesRussian Standard TimeDynamic DST]
"2010"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,03,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"2011"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,01,00,06,00,01,00,00,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"FirstEntry"=dword:000007da
"LastEntry"=dword:000007df
"2012"=hex:10,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2014"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,
  00,00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"2015"=hex:4c,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2013"=hex:10,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesVladivostok Standard Time]
"MUI_Display"="@tzres.dll,-1950"
"TZI"=hex:a8,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,00,
  00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"Std"="RTZ 9 (зима)"
"MUI_Std"="@tzres.dll,-1952"
"Dlt"="RTZ 9 (лето)"
"MUI_Dlt"="@tzres.dll,-1951"
"Display"="(UTC+10:00) Владивосток, Магадан (RTZ 9)"

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesVladivostok Standard TimeDynamic DST]
"2010"=hex:a8,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,03,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"2011"=hex:a8,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,01,00,06,00,01,00,00,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"FirstEntry"=dword:000007da
"LastEntry"=dword:000007df
"2012"=hex:6c,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2014"=hex:a8,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,
  00,00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"2015"=hex:a8,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2013"=hex:6c,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesYakutsk Standard Time]
"MUI_Display"="@tzres.dll,-1880"
"TZI"=hex:e4,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,00,
  00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"Std"="RTZ 8 (зима)"
"MUI_Std"="@tzres.dll,-1882"
"Dlt"="RTZ 8 (лето)"
"MUI_Dlt"="@tzres.dll,-1881"
"Display"="(UTC+09:00) Якутск (RTZ 8)"

[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime ZonesYakutsk Standard TimeDynamic DST]
"2010"=hex:e4,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,03,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"2011"=hex:e4,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,01,00,06,00,01,00,00,00,
  00,00,00,00,00,00,00,00,03,00,00,00,05,00,02,00,00,00,00,00,00,00
"FirstEntry"=dword:000007da
"LastEntry"=dword:000007df
"2012"=hex:a8,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2014"=hex:e4,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,0a,00,00,00,05,00,02,00,
  00,00,00,00,00,00,00,00,01,00,03,00,01,00,00,00,00,00,00,00,00,00
"2015"=hex:e4,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"2013"=hex:a8,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

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

imageВ Сентябре 2014 года было выпущено обновление KB2998527 для поддержки обновлённых часовых поясов для России, которое было установлено на все поддерживаемые серверы и клиентские рабочие станции. При этом серверы System Center 2012 R2 DPM не стали исключением. В результате после 26 Октября 2014 года на некоторых серверах DPM 2012 R2 UR4 отображаемое время выполненных заданий архивирования опережало текущее время на 1 час.
Будьте в курсе актуальных новостей в мире ИТ: https://t.me/ITKBnews. Также будем рады видеть Вас участниками групп https://vk.com/blogitkb и https://www.fb.com/blog.it.kb

В примере рассматривается один часовой пояс – Москва.

imageimageimage

Как видно из скриншота, запланированные задания выполнялись на один час раньше положенного срока, т.е. архивирование виртуальных машин должно было проходить в 17:30, а выполнялось в 16:30.

Вопрос был задан на форуме по Microsoft System Center Data Protection Manager (DPM). При этом нашлось три вариантов решения. Все они могут дать положительный результат.

Рассмотрим каждый из них, предварительно убедившись в том, что защищаемые сервера (т.е. сервера с установленными агентами DPM) имеют некорректную зону в базе DPM.

Чтобы найти проблемные сервера, необходимо выполнить запрос SQL для базы DPM.

Select svr.ServerName, svr.serverid, tz.Description, tz.DaylightName, tz.DaylightBias 
from tbl_AM_ServerTimeZone tz 
join dbo.tbl_AM_Server svr 
on tz.ServerId = svr.ServerId 
order by tz.Description

В итоге получаем

image

Красным выделено то, что серверы имеют неправильную запись о временной зоне в базе данных DPM.

Вариант решения №1

Выполнить описанные действия по статье в TechNet “Изменение часового пояса сервера DPM”.

Обновление часового пояса в базе данных DPM

  1. На защищенном компьютере с помощью оснастки Установка и удаление программ удалите приложение Агент защиты Microsoft System Center Data Protection Manager.
  2. На сервере DPM в консоли администрирования DPM в области задач Управление откройте вкладку Агенты, выберите компьютер, а затем на панели Действия выберите пункт Обновить информацию. Состояние агента изменится на Ошибка.
  3. На панели Подробности щелкните Удалить запись о компьютере с этого сервера DPM.
  4. Переустановите агент защиты на компьютере.
  5. Запустите синхронизацию с проверкой согласованности для каждого защищенного тома на защищенном компьютере.

image

image

image

Если данное решение не помогает, переходим ко 2-ому и 3-ему вариантам.

При этом стоит указать, что оба варианта (2-й и 3-й) сводятся к решению переподключения агентов на сервере DPM.

Вариант решения №2

За основу взято решение сотрудника Microsoft Michael Jacquet (Senior Support Escalation Engineer) в статье “DPM Quick Fix: Tape backup jobs are not scheduled for one or more servers in a protection group” и статьи на TechNet “Изменение часового пояса файлового сервера или рабочей станции” .

Обновление часового пояса в базе данных DPM

  1. На защищенном компьютере с помощью оснастки Установка и удаление программ удалите приложение Агент защиты Microsoft System Center Data Protection Manager.
  2. На сервере DPM в консоли администрирования DPM в области задач Управление откройте вкладку Агенты, выберите компьютер, а затем на панели Действия выберите пункт Обновить информацию. Состояние агента изменится на Ошибка.
  3. На панели Подробности щелкните Удалить запись о компьютере с этого сервера DPM.
  4. Переустановите агент защиты на компьютере.
  5. Запустите синхронизацию с проверкой согласованности для каждого защищенного тома на защищенном компьютере.

При этом переустановку (удаление и установка) агентов можно автоматизировать при помощи следующих утилит:

  • psexec
  • msiexec (встроен в систему)

Пример: чтобы удалить агента DPM 2012 SP1 x64 вручную, необходимо на защищаемом сервере выполнить с повышенными правами команду (для автоматического удаления без ответов использовать )

msiexec /x {EECBB752-2C6E-45B7-9F18-2327B886309A} /passive 

Список верных GUID:

  • агент DPM 2010 x86 — {3EC7C770-9F3F-4177-A754-EBFF04A1AFF2}
  • агент DPM 2010 x64 — {5EB850FE-84F7-4856-A203-0F80BC93C66A}
  • агент DPM 2012 x86 — {1750A557-FFFB-4C12-84B1-020DD5885F00}
  • агент DPM 2012 x64 — {EECBB752-2C6E-45B7-9F18-2327B886309A}

2-ой вариант подойдет, тем, у кого один DPM сервер и небольшое количество защищаемых серверов (т.е. серверов подключенных к DPM).

Вариант решения №3

Скрипт предложил Svyatoslav Dubovik (https://social.technet.microsoft.com/Forums/ru-RU/e56ed77a-06e6-45d9-abec-d45edbbf712e/-dpm?forum=msdpmru). Это наиболее адекватный вариант по причине быстродействия и максимальной эффективности.

$logPath = "c:Scriptattach_log.csv" 
$DPMServerName = read-host "DPM Server:" 
$UserName = read-host "UserName:" 
$Pwd = read-host "Password:" -assecurestring 
$Domain = read-host "Domain:" 
$dpmServer = Connect-DPMServer $DPMServerName 
$prodServer = Get-DPMProductionServer | Where-Object {$_.ServerProtectionState -eq "HasDatasourcesProtected"} 
$array = @() 

foreach ($ps in $prodServer) { 
  $obj = New-Object psobject 
  Add-Member -InputObject $obj -MemberType noteproperty -Name "Server" -Value $ps.ServerName 
  Add-Member -InputObject $obj -MemberType noteproperty -Name "ProtectionState" -Value $ps.ServerProtectionState 

  try { 
    $dpmServer.AttachProductionServer($ps, $UserName, $Pwd, $Domain) 
    Add-Member -InputObject $obj -MemberType noteproperty -Name "Status" -Value "ReAttach" 
  } 
  catch { 
    Add-Member -InputObject $obj -MemberType noteproperty -Name "Status" -Value "Error" 
  } 

  $array += $obj 
} 
$array | Export-Csv -Path $logPath -NoTypeInformation -Delimiter ';'

Единственное, что я поправил, это строчку:

$prodServer = Get-DPMProductionServer | Where-Object {$_.ServerProtectionState -eq "HasDatasourcesProtected"}

для поиска только тех серверов, которые в данный момент имеют активные защищаемые ресурсы на DPM сервере. В оригинале были взяты все серверы:

$prodServer = Get-DPMProductionServer

После выполнения скрипта проверяем лог файл attach_log.csv.

image

Формируем удобочитаемый вид в MS Excel из данного файла.

image

image

Ставим фильтр:

image

Выбираем нужный результат:

image

В итоге получаем:

image

После выполнения скрипта в базе данных DPM получаем:

image

Сравниваем с серверами подключенными к DPM. Для этого открываем консоль DPM и переходим на закладку “Management” -> “Agents”

image

В моем случае пришлось обновить группы защиты, т.е. удалить и повторно добавить время выполнения задания, чтобы время заданий поменялось.

Можно обновить вручную или при помощи PowerShell командлета Update-DPMProtectionGroup

Результат

image

Спасибо за внимание! Надеюсь, данная статья кому-нибудь поможет! Улыбка

P.S. бонус для тех кто прочитал всю статью Улыбка

Рекомендация не ставить Update Rollup 5 DPM 2012 R2 по причине возникновения в определенных случаях ошибок на DPM сервере после его установки. К тому же процесс деинсталляции указанного UR возможен только через переустановку DPM и восстановление баз данных DPM из архива.

@ITKBnews           blog.it.kb              blogitkb

Victor_M

Виктор

@Victor_M

Системный аналитик

Здравствуйте!
Есть Windows Server 2012 R2. Все обновления установлены.
На нем из-под hyper-v запущена виртуальная машина, тоже Windows Server 2012 R2. Установлены все доступные обновления (Windows новые обновления не находит).
На физической машине нормальный часовой пояс — UTC +03:00 Москва.
На виртуальной машине — UTC +04:00 Москва.
Как сделать нормальный часовой пояс???


  • Вопрос задан

    более трёх лет назад

  • 3964 просмотра

На компьютере где часовой пояс в норме экспортируйте следующие ветки реестра-

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTimeZoneInformation
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionTime Zones

И импортируйте их на проблемном сервере.

Пригласить эксперта

Аналогичная проблема на некоторых виртуальных и физических серверах. Windows8.1-KB2998527-x64 и Windows8.1-KB3077715-x64 «Обновление применимо к вашему компьютеру».

Помогло Обновление для Windows Server 2012 R2 (KB2998527)


  • Показать ещё
    Загружается…

07 февр. 2023, в 21:17

5000 руб./за проект

07 февр. 2023, в 21:15

5000 руб./за проект

07 февр. 2023, в 21:06

2000 руб./за проект

Минуточку внимания

Напомним, что 21 июня этого года был принят Федеральный закон Российской Федерации №248-ФЗ «Об исчислении времени» на территории Российской Федерации с 26.10.2014 г. Согласно этому закону, вступающему в силу 26 октября 2014 года в 02:00 страна возвращается с летнего на постоянное зимнее время. Кроме того, закон предполагает создание одиннадцати часовых зон с учетом максимального приближения к часовым поясам всемирного координированного времени UTC. Перевод на летнее и зимнее время (сезонный перевод времени) по-прежнему осуществляться не будет.

Помимо, собственно, перевода стрелок часов на 1 час назад, закон предполагает введение ряда новых часовых поясов и удаление одной старой, в частности будут созданы 3 новые часовые зоны, 2 существующие часовые зоны объединены в одну новую, а часть регионов переместится в соседние или новые зоны.

Примечание. В Магаданской области и Забайкальском крае стрелки будут переведены на два часа назад. В Самарской и Кемеровской областях, Удмуртской республике, Камчатском крае и Чукотском автономном округе стрелки часов переводиться не будут.

КорпорацияMicrosoft 23 сентября 2014 г для пользователей России выпустила накопительное обновление КВ2998527 (http://support.microsoft.com/kb/2998527), предназначенное для корректного перехода на зимнее время и учета других изменения в порядке исчисления времени на российских компьютерах с ОС семейства Windows. Данное обновление должно помочь системе определить актуальную часовую зону и правильно изменить время 26 октября 2014 года.

В статье базы знаний КВ2998527 содержатся ссылки на загрузку обновлений для всех поддерживаемых ОС Microsoft: Windows Vista, Windows 7, Windows 8, Windows 8.1, Windows RT, Windows RT 8.1, Windows Server 2003 / 2003 R2, Windows Server 2008 / 2008 R2, Windows Windows Server 2012/ 2008 R2 и встроенных (Embedded) версий Windows. Скачать обновления можно начиная с 24 сентября.

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

В следующих сводных таблицах приведены грядущие изменения в часовых поясах, с указанием сдвигов относительно UTC времени так, как это будет отображаться в ОС Windows.

  1. Семь обновленных часовых поясов
    Название новой часовой зоны Отображение новой часовой зоны в Windows Название текущей часовой зоны Отображение текущей часовой зоны в Windows
    Russia Time Zone 1 (UTC+02:00) Kaliningrad (RTZ 1) Kaliningrad Standard Time (UTC+03:00) Kaliningrad, Minsk
    Russia Time Zone 2 (UTC+03:00) Moscow, St. Petersburg, Volgograd (RTZ 2) Russian Standard Time (UTC+04:00) Moscow, St. Petersburg, Volgograd
    Russia Time Zone 4 (UTC+05:00) Ekaterinburg (RTZ 4) Ekaterinburg Standard Time (UTC+06:00) Ekaterinburg
    Russia Time Zone 5 (UTC+06:00) Novosibirsk (RTZ 5) N. Central Asia Standard Time (UTC+07:00) Novosibirsk
    Russia Time Zone 6 (UTC+07:00) Krasnoyarsk (RTZ 6) North Asia Standard Time (UTC+08:00) Krasnoyarsk
    Russia Time Zone 7 (UTC+08:00) Irkutsk (RTZ 7) North Asia East Standard Time (UTC+09:00) Irkutsk
    Russia Time Zone 8 (UTC+09:00) Yakutsk (RTZ 8 ) Yakutsk Standard Time (UTC+10:00) Yakutsk
  2. Три новые часовые зоны
    Название новой часовой зоны Отображение новой часовой зоны в Windows Название текущей часовой зоны Отображение текущей часовой зоны в Windows
    Russia Time Zone 3 (UTC+04:00) Izhevsk, Samara (RTZ 3)
    Russia Time Zone 10 (UTC+11:00) Chokurdakh (RTZ 10)
    Russia Time Zone 11 (UTC+12:00) Anadyr, Petropavlovsk-Kamchatsky (RTZ 11)
  3. Два часовых пояса объединены в один
    Название новой часовой зоны Отображение новой часовой зоны в Windows Название текущей часовой зоны Отображение текущей часовой зоны в Windows
    Russia Time Zone 9 (UTC+10:00) Vladivostok, Magadan (RTZ 9) Vladivostok Standard Time
    Magadan Standard Time
    (UTC+11:00) Vladivostok
    (UTC+12:00) Magadan
  4. Новая часовой зона для Республики Беларусь.На данный момент пользователи Windows в Беларуси живут по Калининградскому времени ((UTC+03:00) Kaliningrad, Minsk). Обновление предполагает создание собственного часового пояса для Республики Беларусь — (UTC+03:00) Minsk. После установки обновления пользователи в Беларуси должны вручную выбрать свой собственный часовой пояс — Belarus Standard Time.
  5. Примечание. Крым и Севастополь будут относится ко второй, «московской» часовой зоне Russia Time Zone 2 (UTC+03:00) .

    Переход на зимнее время в России 26 октября 2014

    Важно. Пользователям следующих регионов, перемещенных между зонами, 26 октября придется вручную (!!!) переключиться на новую часовую зону:

    1. Республика Беларусь — Russia Time Zone 1
    2. Республика Удмуртия и Самарская область — Russia Time Zone 3
    3. Кемеровская область — Russia Time Zone 6
    4. Забайкальский край — Russia Time Zone 7
    5. Магаданская область — Russia Time Zone 8
    6. Чукотский автономный Округ и Камчатский Край — Russia Time Zone 11 (кстати, эти регионы добились того, что останутся в летнем времени)

    Системы пользователей остальных регионов России после установки обновления, автоматически перейдут в соответствующую зону в час X.

    Установка обновления Windows для перехода на зимнее время

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

    Очень важно: Обновление основано на механизме «летнего» времени. Это означает, что для корректной отработки обновления нужно, чтобы в системе был включен переход на «летнее» время, т.к. именно он до до 26 октября 2014 дает тот самый один час, компенсируя откат часового пояса.

    На Windows-системах, настроенных на автоматическое получение и установку обновлений из Центра обновлений Windows, обновление будет установлено автоматически. Это же самое касается корпоративных пользователей, получающих обновления с внутреннего сервера WSUS (для этого администратор WSUS должен одобрить установку обновления на клиентах).

    Кроме того, обновления можно скачать и установить вручную из Центра загрузок Windows (ссылка есть выше). Для установки скачанного .msu файла с обновлением, просто дважды щелкаем по нему и отвечаем на вопросы мастера.

    Windows установка обновления часовых поясов kb2998527

    Вот так выглядят настройки времени в Windows 8 до установки обновления.

    windows 8 - старая часовая зона

    А вот так после, как видите, часовой пояс изменился на UTC + 04:00 (RTZ 2).

    windows 8 новая часовая зона Russia Time Zone 3

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

    Установить обновление можно и из командной строки (этот вариант подойдет для автоматической расстановки в доменных инфраструктурах, в которых отсутствует сервер WSUS):

    wusa.exe c:TimeUpdateWindows8-RT-KB2998527-x64.msu /quiet /norestart

    Установка обновления KB2998527 из командной строки wusa

    Обновление также можно разместить и запустить из сетевого каталога, например через logon-скрипт групповой политики:

    wusa.exe \serverShareWindows8-RT-KB2998527-x64.msu /quiet /norestart

    В большинстве случаях после установки обновления, вносящего изменения в часовые пояса перезагрузка не компьютера не требуется, а изменения применяются немедленно.

    В том случае, если после установки от пользователя потребуется вручную изменить часовую зону, можно воспользоваться командами из статьи Смена часового пояса Windows из командной строки. Для Windows 7/8 команда может выглядеть так (для Самары:

    tzutil /s "Russia Time Zone 3"

    или так (для Москвы)

    tzutil /s "Russian Standard Time"

    Совет. Еще пара важных моментов:

    1. Если после установки обновления системные часы передвинулись на час назад до 26 октября, проверьте правильно ли установлен часовой пояс и установлен ли чекбокс автоматического перехода на летнее время и обратно.
    2. После установки патча на ОС Widows 2003 не осуществляется автоматический выбор скорректированной часовой зоны, а требуется выполнить это самостоятельно.
    3. После перехода на зимнее время 26 октября для операционной системы Windows Server 2003 (R2) потребуется установка дополнительного патча с целью отмены перехода на летнее время. Данная операция должна быть выполнена до января 2015 года. Подробнее об этом обновлении здесь.
  • Remove From My Forums
  • Вопрос

  • Коллеги здравствуйте. При переходе на зимнее время все сервера под 2012r2 не перешли…

    Попытка установить  KB2998527 в ручную говорит что — «обновление не применимо к вашему компьютеру».

    Естественно пакет специально для 2012r2. В логах это — 

    Не удается установить обновление Windows  из-за ошибки: 2149842967 «» (Командная строка: «»C:Windowssystem32wusa.exe» «C:UsersAvDesktopWindows8.1-KB2998527-2012r2x64.msu» «)

Ответы

    • Помечено в качестве ответа

      27 октября 2014 г. 9:58

    • Снята пометка об ответе
      Alexandr Alimov
      27 октября 2014 г. 9:58
    • Помечено в качестве ответа
      Alexandr Alimov
      27 октября 2014 г. 10:28
    • Помечено в качестве ответа
      Alexandr Alimov
      27 октября 2014 г. 10:28

Системное администрирование, ИТ-инфраструктура, Серверное администрирование, PowerShell


Рекомендация: подборка платных и бесплатных курсов системных администраторов — https://katalog-kursov.ru/

Администраторам Linux: это статья о “Puppet” для Windows, и уже есть бета-версия DSC для Linux.
Для тех, кто в теме: не будет ничего о новинках PowerShell 5.0, только о том, что доступно из “коробки” Windows Server 2012 R2.

Преамбула

В 2013 году с выходом Windows Server 2012 R2 компания Microsoft сообщила о появлении Powershell Desired State Configuration (DSC).

К этому моменту я более или менее представлял, что делают подобные системы для Linux (например, уже упомянутый Puppet). Поэтому, предложенные возможности мне показались недостаточными для полной автоматической настройки системы. И только недавние сообщения о готовящемся Powershell 5.0 и о новых возможностях DSC побудили меня снова обратить внимание на эту технологию.

Чтобы разобраться, я выдумал задачку попроще:

  • Пусть, есть некий клиент, который хочет самостоятельно установить разработанное нами ASP.NET приложение на своем сервере. Кроме IIS, нам нужен MS SQL Server, а также требуется сделать некоторые настройки операционной системы и установить какие-нибудь важные утилиты.

Можно ли вместо инструкции по установке и настройке выдать некий конфигурационный скрипт, который сделает все что требуется на только что установленном Windows Server 2012 R2?

Для лучшего понимания этой статьи, наверное, предварительно стоит прочесть описание в блоге Microsoft — http://habrahabr.ru/company/microsoft/blog/253497/.

Исходное положение

Первоначально предполагалось, что где-то у хостинг-провайдера был заказан сервер. На нем установлен Windows Server 2012 R2 и нам только что пришло оповещение с паролем администратора и ip-адресом сервера.

А мы набираем одну единственную команду, например:

makemagic -server new.example.com

и спустя какое-то время получаем готовую к употреблению систему.

К сожалению, пока это невозможно. Но у меня есть хорошая новость — это будет уже в следующей версии Windows Server 2016. Пока я пишу эту статью, описанная ниже конфигурация (естественно, без установки обновлений) накатывается на только установленный Technical Preview 3.

Сервер

Если у вас есть образ Windows Server 2012 R2 с интегрированными обновлениями, который вы можете использовать — смело пропускайте этот раздел.

В нынешней версии (2012 R2) — проблема в цепочке обновлений:

  1. Одна из первых задач, которую я попробовал сделать — проверить/настроить часовой пояс. Для этого нужно установить последнее обновление часовых поясов.
  2. Это обновление не устанавливается, так как требует большое обновление KB2919355.
  3. Которое, в свою очередь хочет чтобы было обновление KB2975061 — это в моем случае.

Ни одно из этих обновлений недоступно для установки через Windows Update на только что установленной системе.

Поэтому есть два варианта: 1) установить все обновления через Windows Update, но это будет долго (этот процесс вполне можно выполнить позднее), или 2) поставить только пару самых необходимых.

Во втором случае делаем так: подключаемся по RDP на сервер, запускаем консоль Powershell с повышенными привилегиями и скачиваем нужные нам обновления по прямой ссылке и устанавливаем их:

Invoke-WebRequest -Uri http://download.microsoft.com/download/3/9/7/3971FEA1-C483-409E-BF13-219F8A6E907E/Windows8.1-KB2975061-x64.msu -OutFile .DownloadsWindows8.1-KB2975061-x64.msu
.DownloadsWindows8.1-KB2975061-x64.msu /quiet /norestart
Invoke-WebRequest -Uri http://download.microsoft.com/download/2/5/6/256CCCFB-5341-4A8D-A277-8A81B21A1E35/Windows8.1-KB2919355-x64.msu -OutFile .DownloadsWindows8.1-KB2919355-x64.msu
.DownloadsWindows8.1-KB2919355-x64.msu /quiet /promtrestart

После перезагрузки наш сервер будет готов к приему конфигурации.

Еще раз напоминаю, что Windows Server 2016 TP3 сразу готов к экспериментам с DSC.

Компьютер администратора

Важно: Так некоторые из вас могли пропустить предыдущий раздел: Для тестирования этого примера конфигурации любым доступным способом подключите на сервере образ MS SQL Server 2014, я выбрал Express Edition и подключил как R:.

Должен огорчить тех, кто уже обновился до Windows 10 — есть нюансы, которые не позволят использовать созданные в этой системе конфигурации. Тоже самое относится к тем, кто поставил Powershell 5.0.

Создание и применение конфигураций выполнялось на Windows 8.1. Версия Powershell:

PS C:Usersnelsh> $PSVersionTable

Name                           Value                                                                                                       
----                           -----                                                                                                       
PSVersion                      4.0                                                                                                         
WSManStackVersion              3.0                                                                                                         
SerializationVersion           1.1.0.1                                                                                                     
CLRVersion                     4.0.30319.34209                                                                                             
BuildVersion                   6.3.9600.17400                                                                                              
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0}                                                                                        
PSRemotingProtocolVersion      2.2                   

Но и этого еще недостаточно. На компьютере администратора необходимо включить Powershell Remoting (на сервере, после установки двух обновлений, PSRemoting уже включен). Это выполняется в консоли Powershell с повышенными привилегиями:

Enable-PSRemoting -Force

Кроме того, нужно разрешить (!) с компьютера администратора подключаться к другим компьютерам.

Set-Item WSMan:localhostClientTrustedHosts -Value *

Для удобства, я также добавил в файл hosts строку c ip-адресом созданного сервера.

<ip-address> cs1.example.com

Исходный код примера доступен на Github: https://github.com/nelsh/DSC-WS2012R2.

Первая конфигурация

Это скриншот первой версии файла DSC-W2012R2.ps1 (в репозитории, для удобства, он лежит под именем DSC-W2012R2-First.ps1).

  • 1-21 строки — собственно сама конфигурация, названная DSCW2012R2.
    • В ней на 3-7 строке мы сообщаем, что будет всего один параметр — массив имен серверов.
    • На 8 строке мы подключаем необходимый модуль PowerShell
    • 10-20 строки — список используемых ресурсов в конфигурации. В нашем случае — только один ресурс “Script”, о нем чуть ниже.
  • 23-25 строки — так как одним из шагов будет добавление пользователя, то нам потребуется создать для него пароль. Чтобы не разбираться с шифрованием — разрешим хранить пароли в конфигурации в открытом виде.
  • 27 строка — создание конфигурации. В результате выполнения этого скрипта у нас появится файл DSCW2012R2cs1.example.com.mof — что-то типа скомпилированной конфигурации.
  • 29-31 строки — запускает применение конфигурации к серверу с именем cs1.example.com. Предварительно появиться стандартное окошко для запроса имени и пароля для доступа к серверу.
  • Начиная с 33 строки — пример для одновременной настройки пары серверов.

Возвращаемся к ресурсам — Powershell DSC имеет 12 встроенных ресурсов. Большинство (а точнее 11 из 12) из них просты и понятны. Но для полноценной настройки системы их явно недостаточно. Microsoft предлагает самостоятельно создавать необходимые ресурсы. Но, честно признаюсь, даже сейчас у меня нет особого желания разбираться с этим.

Однако, при первом знакомстве я не обратил внимание на ресурс Script. Раcсмотрим пример подробнее:

        Script First {
            TestScript = { if ( "Test script content" ) { $true } else { $false } }
            SetScript = { "Set script content" }
            GetScript = { return @{ Result = "Result for GetScript"
                GetScript = $GetScript; SetScript = $SetScript; TestScript = $TestScript
                }
            }

Это самый простой вариант, который ничего не делает. Как он работает:

  • Для применения конфигурации мы вызываем команду Start-DSCConfiguration (строка 29).
  • Когда в процессе обработки списка ресурсов скрипт доходит до ресурса “Script First”, то вначале вызывает код из переменной TestScript. В нашем примере он всегда возвращет $true.
  • А вот если бы он вернул $false, тогда вызвался бы код из переменной SetScript.

В этих переменных может быть любой код на Powershell — масштабы зависят только от наших фантазий. В идеальном варианте, код в TestScipt должен проверять правильность всех настроек, которые выполняются в коде SetScript.

Попробуем запустить нашу первую конфигурацию (по старой привычке я запускаю из Far Manager):

powershell.exe -ExecutionPolicy RemoteSigned .DSC-WS2012R2.ps1

Завершено без ошибок.

Чтобы не объяснять как запустить проверку с компьютера администратора, я зашел на наш сервер и выполнил пару команд.

Первая: Test-DSCConfiguration — проверяет конфигурацию. Обратите внимание на последнее сообщение (после желтого текста) — True. Т.е. конфигурация проверена и ошибок не обнаружено.

Следующая команда: Get-DSCConfiguration — сообщает подробности о текущей конфигурации. Достаточно сверить код нашего ресурса “Script First” с этим скриншотом, чтобы понять что и откуда берется.

В этот самый момент я понял, что, пожалуй, все получится.

Итак. Переходим к…

Продвинутая конфигурация

Начинаем добавлять реальные задачи в конфигурацию узлов.

Первое, в чем я хотел бы быть уверен — имя компьютера и основной dns-суффикс. Если в нашей DNS-зоне этот компьютер будет называться cs1.example.com, то имя — cs1, а dns-суффикс — example.com

Начнем с имени. Вначале я написал такой код:

       $shortName = $Server.Split(".")[0].ToLower()
        Script ComputerName {
            SetScript = { Rename-Computer -NewName $shortName }
            GetScript = { return @{ Result = $env:computerName
                GetScript = $GetScript.Trim(); SetScript = $SetScript.Trim(); TestScript = $TestScript.Trim() } }
            TestScript = { $env:computerName.ToLower() -eq $shortName }
        }

Но он не работает. SetScript, GetScript и TestScript ничего не знают о переменных вне своей зоны видимости. Передать можно только используя форматирование строк. Вот так:

       $shortName = $Server.Split(".")[0].ToLower()
        Script ComputerName {
            SetScript = ({
                Rename-Computer -NewName "{0}"
            } -f @($shortName))
            GetScript = { return @{ Result = $env:computerName
                GetScript = $GetScript.Trim(); SetScript = $SetScript.Trim(); TestScript = $TestScript.Trim()
                }
            }
            TestScript = ({ 
                $env:computerName.ToLower() -eq "{0}" 
            } -f @($shortName))
        }

С проверкой dns-суффикса все оказалось проще — это параметр в реестре, поэтому используем стандартный ресурс Registry:

       Registry PrimaryDomainSuffix {
            Key = "HKLM:SYSTEMCurrentControlSetServicesTcpipParameters"
            ValueName = "NV Domain"
            Ensure = "Present"
            ValueData = "example.com"
            ValueType = "String"
        }

Чтобы во время экспериментов обновления не ставились автоматически — настроим Windows Update. Только получать уведомления о доступных обновлениях:

       Script WindowsUpdateSettings {
            SetScript = {
                $WUSettings = (New-Object -com "Microsoft.Update.AutoUpdate").Settings
                $WUSettings.NotificationLevel=2
                $WUSettings.IncludeRecommendedUpdates=$true
                $WUSettings.Save()
            }
            GetScript = { return @{ Result = ''
                    GetScript = $GetScript; SetScript = $SetScript; TestScript = $TestScript
                }
            }
            TestScript = { 
                $WUSettings = (New-Object -com "Microsoft.Update.AutoUpdate").Settings; $WUSettings.NotificationLevel -eq 2 -and $WUSettings.IncludeRecommendedUpdates -eq $true
            }
        }

Получаем пару важных обновления и все-таки настраиваем часовой пояс

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

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

Создаем каталог для утилиты:

       $abcUpdatePath = "C:UTILSABC-Update"
        $abcUpdateZip  = Join-Path $abcUpdatePath "ABC-Update.zip"
        File AbcUpdateDir {
            Ensure          = "present"
            DestinationPath = $abcUpdatePath
            Type            = "Directory"
        }

Скачиваем:

       Script AbcUpdateDownload {
            DependsOn = "[File]AbcUpdateDir"
            SetScript =  ({
                Invoke-WebRequest -Uri http://abc-deploy.com/Files/ABC-Update.zip -OutFile {0}
                } -f @($abcUpdateZip)) 
            GetScript = { 
                return @{ Result = $TestScript
                    GetScript = $GetScript; SetScript = $SetScript; TestScript = $TestScript
                    }
                }
            TestScript = ({
                Test-Path {0} 
                } -f @($abcUpdateZip)) 
        }

Распаковываем, используя встроенный ресурс Archive:

       Archive AbcUpdateUnpack {
            Ensure = "Present"
            DependsOn = "[Script]AbcUpdateDownload"
            Path = $abcUpdateZip
            Destination = $abcUpdatePath
        }

Запускаем, и, кроме обновления часовых поясов, сразу же обновим .NET Framework до версии 4.5.2:

        Script AbcUpdateNet452Install {
            DependsOn = "[Archive]AbcUpdateUnpack"
            SetScript = { C:UTILSABC-UpdateABC-Update.exe /a:install /k:2934520 }
            GetScript = { return @{ Result = if ( Get-HotFix -Id KB2934520 -ErrorAction SilentlyContinue ) { "KB2934520: Installed" } else { "KB2934520: Not Found" }
                GetScript = $GetScript; SetScript = $SetScript; TestScript = $TestScript
                }
            }
            TestScript = { if ( Get-HotFix -Id KB2934520 -ErrorAction SilentlyContinue ) { $true } else { $false } }
        }

        Script AbcUpdateTimeZoneInstall {
            DependsOn = "[Archive]AbcUpdateUnpack"
            SetScript = { C:UTILSABC-UpdateABC-Update.exe /a:install /k:3013410 }
            GetScript = { return @{ Result = if ( Get-HotFix -Id KB3013410 -ErrorAction SilentlyContinue ) { "KB3013410: Installed" } else { "KB3013410: Not Found" }
                GetScript = $GetScript; SetScript = $SetScript; TestScript = $TestScript
                }
            }
            TestScript = { if ( Get-HotFix -Id KB3013410 -ErrorAction SilentlyContinue ) { $true } else { $false } }
        }

Наконец-то мы добрались до часовых поясов. Методом научного тыка я выбрал часовой пояс около озера Байкал.

Я нашел такой вариант: изменить часовой пояс можно только с помощью утилиты командной строки tzutil.exe, а проверить только с помощью Powershell. Но этот случай особенный — при установке используется одно значение «North Asia East Standard Time», а проверяется совершенно другое «Russia TZ 7 Standard Time»:

       Script TimeZoneSettings {
            SetScript = { tzutil.exe /s "North Asia East Standard Time" }
            GetScript = { return @{ Result = [System.TimeZone]::CurrentTimeZone.StandardName
                GetScript = $GetScript.Trim(); SetScript = $SetScript.Trim(); TestScript = $TestScript.Trim()
                }
            }
            TestScript = { [System.TimeZone]::CurrentTimeZone.StandardName -eq "Russia TZ 7 Standard Time" }
        }

Похоже, такая беда со всеми часовыми поясами России.

Компоненты Windows

С ними все очень просто и очень большое количество примеров в интернете. Вполне может сложиться впечатление, что администраторы Windows занимаются только установкой и удалением компонентов. Только два первых ресурса WindowsFeature из конфигурации:

       WindowsFeature offFSSMB1 {
            Ensure = "Absent"
            Name   = "FS-SMB1"
        }
        WindowsFeature WebAspNet45 {
            Ensure = "Present"
            Name   = "Web-Asp-Net45"
            IncludeAllSubFeature = $True
        }

В первом случае компонент удаляется, во втором ставится вместе со всеми зависимостями.

Установка пакетов

На примере Far Manager. Во-первых, пакет нужно скачать уже известным нам способом:

       Script FarDownLoad {
            SetScript = { Invoke-WebRequest -Uri http://www.farmanager.com/files/Far30b4400.x64.20150709.msi -OutFile C:UsersPublicDownloadsFar30b4400.x64.20150709.msi }
            GetScript = { return @{ Result = Test-Path C:UsersPublicDownloadsFar30b4400.x64.20150709.msi
                GetScript = $GetScript; SetScript = $SetScript; TestScript = $TestScript
                }
            }
            TestScript = { Test-Path C:UsersPublicDownloadsFar30b4400.x64.20150709.msi }
        }

В параметрах ресурса Package есть «ProductId». И вроде есть даже программа, которая анализирует msi-файл и сообщает этот самый «ProductId». Я пошел напролом: сразу же попробовал применить конфигурацию без этого параметра и тексте ошибки обнаружил «ProductId», а также правильный «Name». Описание ресурса получилось следующее:

       Package FarInstall {
            Ensure    = "Present"
            DependsOn = "[Script]FarDownLoad"
            Name      = "Far Manager 3 x64"
            ProductId = 'E5512F32-B7C1-48E3-B6AF-E5F962F99ED6'
            Path      = "C:UsersPublicDownloadsFar30b4400.x64.20150709.msi"
            Arguments = ''
            LogPath   = "C:UsersPublicDownloadsFarInstall.log"
        }

Пользователи и права

По постановке задачи, сервер находится под управлением заказчика, но тем не менее я допустил, что будет существовать возможность обновления web-приложения с помощью нашего сервера непрерывной интеграции. Мы используем Jenkins CI (кстати, все задачи в нем тоже реализованы на Powershell).

В минимальном варианте нам нужен пользователь Jenkins в группе Users и с правом записи в каталог, где размещается web-приложение. Пусть это будет c:web.

Пользователь создается таким образом:

       $JenkinsCredential = New-Object System.Management.Automation.PSCredential(`
            "Jenkins", ("Pa`$`$w0rd" | ConvertTo-SecureString -asPlainText -Force)`
        )
        User JenkinsUser {
            UserName = "Jenkins"
            Ensure = "Present"
            Password = $JenkinsCredential
            PasswordChangeNotAllowed = $true
            PasswordNeverExpires = $true
        }

Есть способ использовать в конфигурации зашифрованные пароли, но мы пойдем простым путем. В данном случае будет создан пользователь «Jenkins» с паролем «Pa$$w0rd».

Создание каталога делается уже привычным образом. А вот с назначением прав на каталоги и проверкой пришлось повозится:

       $AccessStringTmpl = "NT AUTHORITYSYSTEM Allow  FullControl`nBUILTINAdministrators Allow  FullControl`nBUILTINUsers Allow  ReadAndExecute, Synchronize`nCS1Jenkins Allow  Modify, Synchronize"
        File DirDweb {
            Ensure          = "present"
            DestinationPath = "c:web"
            Type            = "Directory"
        }
        Script AclsDweb
        {
            DependsOn = "[File]DirDweb"
            SetScript = {
                icacls c:web /reset /t /q
                takeown.exe /f c:web /r /a /d y
                icacls.exe c:web /inheritance:r
                icacls.exe c:web /grant:r "Administrators:(OI)(CI)(F)" "System:(OI)(CI)(F)" "Users:(OI)(CI)(RX)" "Jenkins:(OI)(CI)(M)" /t /q
            }
            GetScript = { return @{ Result = (get-acl c:web).AccessToString
                GetScript = $GetScript; SetScript = $SetScript; TestScript = $TestScript
                }
            }
            TestScript = ({ (get-acl c:web).AccessToString -eq "{0}"  
            } -f @($AccessStringTmpl))
        }

Проще все назначить права с помощью icacls.exe. В данном случае выполняется по порядку:

  1. в первой строке: сброс всех прав и включение наследования от родительского каталога
  2. во второй: владельцем назначается встроенная группа Administrators
  3. в третьей: отменяется наследование и удаляются все права
  4. в четвертой: назначение полных прав для Administrators и SYSTEM, чтение для пользователей и изменение для Jenkins.

Для проверки используется метод (get-acl c:web).AccessToString — полученная строка должна совпадать с переменной $AccessStringTmpl. Кстати, в примере ошибка — в строке явным образом указано имя сервера “CS1” — а должно подставляться значение $Server.Split(".")[0].ToUpper().

MS SQL

Я несколько пожалел, что решил не использовать сторонних модулей. Так как уже есть модуль для установки и настройки MS SQL Server. Но у меня есть конфигурационный файл для автоматической установки и я решил попробовать.

Во-первых, нам потребуется еще один компонент Windows — ресурс “WindowsFeature NetFrameworkCore”:

       WindowsFeature NetFrameworkCore {
            Ensure = "Present"
            Name   = "Net-Framework-Core"
            IncludeAllSubFeature = $True
        }

Во-вторых, конфигурационный файл для установщика — ресурс “Script MSSQLConfigDownLoad”:

        Script MSSQLConfigDownLoad {
            SetScript = { Invoke-WebRequest -Uri https://raw.githubusercontent.com/nelsh/DSC-WS2012R2/master/SQL2014-Setup.ini -OutFile C:UsersPublicDownloadsSQL2014-Setup.ini }
            GetScript = { return @{ Result = Test-Path C:UsersPublicDownloadsSQL2014-Setup.ini
                GetScript = $GetScript; SetScript = $SetScript; TestScript = $TestScript
                }
            }
            TestScript = { Test-Path C:UsersPublicDownloadsSQL2014-Setup.ini }
        }

В-третьих, вы не забыли подключить образ с дистрибутивом какой-нибудь редакции MS SQL Server 2014?

        Script MSSQL {
            SetScript = { r:setup.exe /configurationfile=C:UsersPublicDownloadsSQL2014-Setup.ini /SAPWD=1q@w3e }
            GetScript = { return @{ Result = if ( Get-Service -Name "MSSQLSERVER" -ErrorAction SilentlyContinue ) { "Servise MSSQLSERVER is exist" } else { "Servise MSSQLSERVER not found" }
                GetScript = $GetScript; SetScript = $SetScript; TestScript = $TestScript
                }
            }
            TestScript = { if ( Get-Service -Name "MSSQLSERVER" -ErrorAction SilentlyContinue ) { $true } else { $false } }
        }

Я воспользовался диском с Express Edition, который подключен как R:. В процессе будут установлены Database Engine плюс FullSearch, а также средства администрирования. Проверка в TestScript самая простая — есть сервис MSSQLSERVER или нет.

… И когда по списку процессов на сервере я понял, что установка запустилась — стало понятно, что эксперимент можно считать завершенным.

Дальнейшая настройка может зависеть от ситуации: если требуется срочно-срочно показать рабочее приложение, то дальше каким-то образом получаем и устанавливаем наше приложение.

Если же у нас плановая установка (без авралов), то предварительно можно настроить брандмауэр и установить служебные программы (мониторинг, резервное копирование) — у всех могут быть свои варианты. Из того, что используется у нас, наибольшую трудность может вызвать только AWStats: код в TestScript будет напоминать небольшую программу, но это тоже решаемо.

Поэтому, на этом пункте решил остановится. По-моему, получился удачный пример, который любой может адаптировать к своей ситуации.

Предварительные итоги

На мой взгляд, DSC можно брать на вооружение, не дожидаясь следующей версии Windows Server.

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

  • Может использоваться как в ручном режиме, так и в автоматическом с сервером конфигураций.
  • Может использоваться независимо от наличия Active Directory, а может и вместе с групповыми политиками.
  • Каталог с конфигурациями можно положить в систему контроля версий.
  • С выходом Powershell 5.0 мы получаем удобный способ использования дополнительных модулей — см. powershellgallery.com. Там уже есть несколько десятков модулей, созданных сообществом. Возможно, среди них уже есть такие, которыми можно заменить скрипты из моего примера.

Прошу учесть, что в примере из этой статьи возможны ошибки, а также, вероятно, есть более эффективные решения.

Последнее важное примечание: насколько я понял, вопрос с необходимой перезагрузкой в процессе настройки даже в новых версиях не имеет решения. Поэтому описанная выше конфигурация применяется за два прохода — причем и на 2012R2 и на 2016 — прерывается на установке компонентов и просит перезагрузку. После чего необходимо снова запустить применение конфигурации.

Полезные ссылки

  • Все примеры из этой статьи находятся в проекте на Github-е
    https://github.com/nelsh/DSC-WS2012R2
  • Windows PowerShell Desired State Configuration Overview
    https://technet.microsoft.com/ru-ru/library/dn249912.aspx
  • Ближайшее будущее Powershell 5.0 и DSC
    https://www.powershellgallery.com/
    http://blogs.msdn.com/b/powershell/archive/2015/09/15/updated-dsc-resource-kit-available-in-powershell-gallery.aspx

Понравилась статья? Поделить с друзьями:
  • Обновление часовых поясов для windows 7 x86
  • Обновление часовых поясов для windows 7 x64 2021
  • Обновление часовых поясов для windows 2008
  • Обновление часовых поясов windows xp 2014
  • Обновление часовых поясов windows 7 sp1