Чтобы на компьютере Windows применились новые настройки локальной или доменной групповой политики (GPO), служба Group Policy Client ( gpsvc
) должна перечитать настройки политик и применить изменения. Настройки групповых политик в Windows обновляются при загрузке компьютера, при входе пользователя, и автоматически в фоновом режиме (в течении от 90 до 120 минут). В некоторых случаях администратору нужно, чтобы новые настройки политики применились немедленно, не дожидаясь указанных выше событий.
Автоматическое применение настроек групповых политик в Windows
Выше мы указали, когда настройки GPO автоматически применяются на клиенте:
- Настройки групповых политик, заданные в разделе секции Computer Configuration применяются при загрузке Windows.
- Настройки GPO из секции User Configuration применяются при входе пользователя.
- Фоновое обновление групповых политик выполняется автоматическая раз в 90 минут + случайное смещение времени (offset) в интервале от 0 до 30 минут (рандомный интервал позволяет уменьшить нагрузку на DC одновременным запросами от клиентов). Это означает, что новые политики гарантировано применятся на клиентах в интервале 90 – 120 минут после обновления файлов GPO на контроллере домена.Контроллеры домена по умолчанию обновляют настройки GPO раз в 5 минут.
Настройки фонового обновления политик можно изменить с помощью параметра следующих параметров GPO в разделе Computer Configuration -> Administrative Templates -> System -> Group Policy:
- Set Group Policy refresh interval for computers — здесь можно изменить частоту обновления настроек GPO со стандартных 90 минут и значение смещения.
- Turn off background refresh of group policy — позволяет полностью отключить фоновое обновление настроек политик
Но в большинстве случаев трогать эти настройки не рекомендуется.
Принудительное обновление групповых политик на компьютере Windows
Для принудительного, немедленного обновления (применения) настроек групповых политик на компьютере Windows используется утилита gpupdate .
Большинство администраторов не задумываясь используют для обновления политик команду:
gpupdate /force
.
Эта команда заставляет компьютер принудительно перечитать все политики с контроллера домена и заново применить все параметры. Т.е. ключ force указывает клиенту что нужно обратиться к контроллеру домена и заново получает файлы ВСЕХ нацеленных на него GPO. Это вызывает повышенную нагрузку на сеть и контроллер домена.
Простая команда gpudate
без параметров применяет только новые/измененные параметры GPO.
Updating policy..._x000D_Computer Policy update has completed successfully._x000D_User Policy update has completed successfully.
Можно отдельно обновить параметры GPO из пользовательской секции
gpupdate /target:user
или только политики компьютера:
gpupdate /target:computer /force
Если некоторые политики нельзя обновить в фоновом режиме (обычно это клиентские расширения GPO, которые обрабатываются при входе пользователя), gpudate может заверишь сеанс текущего пользователя (logoff):
gpupdate /target:user /logoff
Или выполнить перезагрузку компьютера (некоторые политики, такие как установка программ в GPO , или логон скрипты применяются только при загрузке Windows):
gpupdate /Boot
Обновить групповые политики на удаленных компьютерах
Есть несколько способов для принудительного обновления настроек GPO на удаленных компьютерах Windows.
В самом простом случае вы просто можете выполнить команду gpupdate на удаленном компьютере:
- спомощьюутилиты PSexec:
PsExec \PC1 gpupdate
- через PowerShell Remoting ( WinRM ):
Invoke-Command -computername PC1 -Scriptblock {gpupdate /force}
Если нужно массово обновить групповые политики на множестве компьютеров, воспользуйтесь консолью Group Policy Management Console ( GPMC.msc
).
Add-WindowsCapability -Online -Name Rsat.GroupPolicy.Management.Tools~~~~0.0.1.0
Чтобы обновить политики на компьютерах, щёлкните в консоли GPMC по нужному Organizational Unit (OU) и выберите Group Policy Update .
Консоль поочерёдно подключится к каждому компьютеру в OU, и вы получите результат со статусом обновления политик (Succeeded/Failed).
Утилита создает на компьютерах задание планировщика с командой GPUpdate.exe /force
для каждого залогиненого пользователя. Задание запускается через случайный промежуток времени (до 10 минут) для уменьшения нагрузки на сеть.
- Remote Scheduled Tasks Management (RPC)
- Remote Scheduled Tasks Management (RPC-ERMAP)
- Windows Management Instrumentation (WMI-IN)
Если компьютер выключен, или доступ к нему блокируется файерволом, для него вернется ошибка ‘ The remote procedure call was cancelled ‘.
Также для удаленного обновления политики можно использовать PowerShell командлет Invoke-GPUpdate , который входит в модуль управления GPO . Например, для обновления политик пользователя на удаленном компьютере, выполните:
Invoke-GPUpdate -Computer PC01 -Target "User"
-RandomDelayInMinutes 0
.В сочетании с командлетом Get-ADComputer вы можете принудительно обновить настройки групповых политик на всех компьютерах (исключая неактивные ) в определенном OU:
Get-ADComputer –filter {enabled -eq "true"} -Searchbase "ou=Computes,OU=SPB,dc=remontka,dc=com" | foreach{ Invoke-GPUpdate –computer $_.name –RandomDelayInMinutes 10 -force}
При удаленном выполнении командлета Invoke-GPUpdate или обновления GPO через консоль GPMC на мониторе пользователя может на короткое время появиться черное окно консоли с запущенной командой gpupdate
.