Иногда может возникнуть необходимость в установке другого часового пояса на множестве сетевых машин. В ручную это делать неудобно и муторно. Воспользуемся консольными командами. Однако вся сложность оказалась в том, что в различных версиях Windows разные команды для данных манипуляций.
Возьмем для примера часовой пояс+03 Багдад: Arabic Standard Time или по-русски Багдадское время.
Доступные пояса можно посмотреть в этой ветке реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones.
Windows 2000
Консольная команда:
RunDLL32.exe shell32.dll,Control_RunDLL timedate.cpl,,/Z Arabic Standard Time
Windows XP & 2003
Консольная команда:
tzchange.exe /c "Arabic Standard Time"
Windows Vista & 2008
К сожалению не существует для этих версий корректной команды смены времени, но можно выкрутиться через изменение реестра и рестарт сервиса:
reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v TimeZoneKeyName /t REG_SZ /d "Arabic Standard Time" /f
net stop w32time
net start w32time
Windows 7 & 2008 R2
Консольная команда:
tzutil.exe /s "Arabic Standard Time"
Для автоматизации изменения часового пояса в домене можно воспользоваться следующим cmd-скриптом:
В начале скрипта нужно лишь поменять две переменные на соответствующий часовой пояс(одна английский вариант, вторая - русский). Работает для всех версий Windows, так как предусматривает все возможные варианты и команды. В домене для применения удобнее всего использовать групповые политики.
Возьмем для примера часовой пояс+03 Багдад: Arabic Standard Time или по-русски Багдадское время.
Доступные пояса можно посмотреть в этой ветке реестра: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones.
Windows 2000
Консольная команда:
RunDLL32.exe shell32.dll,Control_RunDLL timedate.cpl,,/Z Arabic Standard Time
Windows XP & 2003
Консольная команда:
tzchange.exe /c "Arabic Standard Time"
Windows Vista & 2008
К сожалению не существует для этих версий корректной команды смены времени, но можно выкрутиться через изменение реестра и рестарт сервиса:
reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v TimeZoneKeyName /t REG_SZ /d "Arabic Standard Time" /f
net stop w32time
net start w32time
Windows 7 & 2008 R2
Консольная команда:
tzutil.exe /s "Arabic Standard Time"
Для автоматизации изменения часового пояса в домене можно воспользоваться следующим cmd-скриптом:
В начале скрипта нужно лишь поменять две переменные на соответствующий часовой пояс(одна английский вариант, вторая - русский). Работает для всех версий Windows, так как предусматривает все возможные варианты и команды. В домене для применения удобнее всего использовать групповые политики.
Спасибо... Сегодня это было очень актуально... Но скрипт почему-то не отрабатывает
ОтветитьУдалитьЕсли правильно перенесли текст в cmd-шник, от линии до линии, без лишних строк, пробелов, переносов - должно работать. Проверялось на всех указанных ОС, как локально так и через политику домена.
ОтветитьУдалитьПроверил текущий текст на наличии опечаток, но таковых не нашел...
Смогу помочь, если более подробно опишете, каким образом запускаете скрипт.