Чтобы устройство Windows отображало правильное время, часовой пояс, установленный на устройстве, должен соответствовать географическому положению вашего компьютера. В этой статье объясняется, как установить часовой пояс в Windows Server и настольных редакциях (Windows 10 или 11) с помощью панели управления, командной строки, PowerShell или групповой политики.

Изменение часового пояса в Windows с помощью панели управления

Начиная с Windows 10 и Windows Server 2016, для настройки часового пояса используется отдельный раздел панели настроек. Выполните команду ms-settings:dateandtime или щелкните значок часов в системном трее и выберите Настроить дату/время.

настроить дату время

По умолчанию Windows автоматически синхронизирует время и выбирает подходящий часовой пояс для вашего компьютера (в Установить часовой пояс автоматически опция включена).

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

Устранение распространенных проблем синхронизации времени в Windows.

приложение для настройки часового пояса в windows 10

Для управления часовым поясом в Windows можно также использовать классический апплет панели управления «Дата и время» (выполните команду timedate.cpl

установить часовой пояс в windows 10 - timedate.cpl

При попытке изменить часовой пояс в Windows Server 2019 и 2022 возникает ошибка:

Date and time
Unable to continue.
You do not have permission to perform this task. Please contact your computer administrator for help.

cant change time zone on windows 10 and windows server 2019 Невозможно продолжить. У вас нет разрешения на выполнение этой задачи

В этом случае убедитесь, что у вашей учетной записи есть права на изменение параметров часового пояса в Windows. Откройте редактор локальной групповой политики (gpedit.msc), перейдите в раздел Конфигурация компьютера -> Параметры Windows -> Параметры безопасности -> Локальные политики -> Назначение прав пользователей и добавьте встроенный параметр Администраторы группа в Изменить . время зона политика.

параметр gpo: изменение разрешений часового пояса

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

Как изменить часовой пояс в Windows CMD

Чтобы управлять часовым поясом в Windows, используйте встроенную программу tzutil.exe (Windows Time Zone Utility) — инструмент командной строки.

Получение идентификатора текущего часового пояса (TimeZoneID):

tzutil /g
tzutil /g - проверить текущий часовой пояс

В этом примере, Тихоокеанское стандартное время идентификатор текущего часового пояса.

Список всех часовых поясов с их названиями и настройками:

tzutil /l
tzutil /l -list all available timezone

Проверьте полный список часовых поясов, доступных в Windows https://docs.microsoft.com/en-us/windows-hardware/manufacture/desktop/default-time-zones.

Если вы хотите быстро найти и отобразить все часовые пояса с определенным смещением (например, с UTC -6 смещением), выполните команду:

tzutil /l | find /I "utc-06"

найти часовой пояс по времени utc

Измените текущий часовой пояс на (UTC-05:00) Восточное время (США & Канада):

tzutil /s "Eastern Standard Time"
tzutil s set timezone cmd

Следующий ключ реестра содержит текущий часовой пояс, установленный в Windows:

reg query HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
проверка текущего часового пояса через реестр

Чтобы отключить переход на летнее время для определенного часового пояса, необходимо указать идентификатор часового пояса с суффиксом _dstoff:

tzutil /s “Central European Standard Time_dstoff”

Эта команда изменяет часовой пояс компьютера и отключает сезонную смену часов.

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

w32tm /tz

Time zone: Current:TIME_ZONE_ID_UNKNOWN Bias: 480min (UTC=LocalTime+Bias)
[Standard Name:"Pacific Standard Time" Bias:0min Date:(unspecified)]
[Daylight Name:"Pacific Standard Time" Bias:0min Date:(unspecified)]

w32tm /tz

В Hyper-V Server и Windows Server Core можно использовать встроенный sconfig инструмент для установки даты и часового пояса.

Установка часового пояса с помощью PowerShell

Чтобы проверить текущий часовой пояс Windows с помощью PowerShell, выполните команду

Get-TimeZone

Id                         : Pacific Standard Time
DisplayName                : (UTC-08:00) Pacific Time (US & Canada)
StandardName               : Pacific Standard Time
DaylightName               : Pacific Standard Time
BaseUtcOffset              : -08:00:00
SupportsDaylightSavingTime : False

Get-TimeZone с помощью powershell

Список доступных часовых поясов:

Get-TimeZone -ListAvailable

Get-TimeZone ListAvailable

Вы можете использовать фильтр для поиска по списку часовых поясов:

Get-TimeZone -ListAvailable | Where-Object {$_.displayname -like "*canada*"}

powershell filter timezones

Установите новый часовой пояс в Windows:

Set-TimeZone -Name "US Eastern Standard Time"

или

GetTimeZone -ListAvailable|? DisplayName -like "*Berlin*"|Set-TimeZone

Запрос списка удаленных узлов Windows Server на предмет их настроек часового пояса (список в txt-файле):

$servers = get-content C:\ps\server_list.txt
Get-WMIObject -Class Win32_TimeZone -Computer $servers | select-Object PSComputerName, Caption

Установите часовой пояс в списке удаленных компьютеров Windows:

$servers = get-content C:\ps\server_list.txt
Invoke-Command -ComputerName $servers -Command {Set-TimeZone "West Asia Standard Time"}

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

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

Чтобы установить часовой пояс с помощью сценария входа в систему GPO, можно использовать простой сценарий PowerShell (он работает со всеми версиями Windows):

$timeZone = "Central Europe Daylight Time"
$WinOSVerReg = Get-Item "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion"
$WinOSVer = $WinOSVerReg.GetValue("CurrentVersion")
if ($WinOSVer -GE 6){
tzutil.exe /s $timeZone
} Else {
$params = "/c Start `"Change timeZone`" /MIN %WINDIR%\System32\Control.exe TIMEDATE.CPL,,/Z "
$params += $timeZone
$proc = [System.Diagnostics.Process]::Start( "CMD.exe", $params )
}

Другим способом установки часового пояса является импорт содержимого файла HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation ключ с эталонного компьютера с правильными параметрами времени, настроенными на других компьютерах с помощью GPO. В этой статье описывается, как импортировать параметры реестра с помощью групповой политики.

Выберите весь ключ реестра с помощью обозревателя реестра. Это импортирует все параметры часового пояса в редактор GPO (Computer Configuration -> Preferences -> Windows Settings -> Registry).

установка информации о часовом поясе реестра с помощью gpo

Использование GPP Нацеливание на уровень предмета если вы хотите назначить разные настройки часового пояса для компьютеров в разных сайтах Active Directory.

gpo: установка часового пояса в соответствии с сайтом Active Directory

Если вы используете терминальные RDS-фермы, а пользователи и RDSH-серверы находятся в разных часовых поясах, сеансы RDP будут показывать пользователю неправильное время. Чтобы перенаправить локальный часовой пояс пользователя в сеанс RDP, включите опцию GPO Разрешить перенаправление часового пояса (Computer Configuration > Policies -> Administrative Templates -> Windows Components -> Remote Desktop Services -> Remote Desktop Session Host -> Device and Resource Redirection).