Обновление политик команда

Способы обновления групповых политик Windows на компьютерах домена

Обновление политик команда

В этой статье мы рассмотрим особенности обновления параметров групповых политик на компьютерах домена Active Directory: автоматическое обновление политик, команду GPUpdate, удаленное обновление через консоль Group Policy Management Console (GPMC.msc) и командлет PowerShell Invoke-GPUpdate.

Интервал обновления параметров групповых политик

Чтобы новые настройки, которые вы задали в локальной или доменной групповой политике (GPO) применились на клиентах, необходимо, чтобы служба Group Policy Client перечитала политики и внесла изменения в настройки клиента. Это процесс называется обновление групповых политик.

Настройки групповых политик обновляются при загрузке компьютере и входе пользователя, или автоматически в фоновом режиме раз в 90 минут + случайное смещение времени (offset) в интервале от 0 до 30 минут (т.е.

политики гарантировано применятся на клиентах в интервале 90 – 120 минут после обновления файлов GPO на контроллере домена).

Вы можете изменить интервал обновления настрое GPO с помощью параметра Set Group Policy refresh interval for computers, который находится в секции GPO Computer Configuration -> Administrative Templates -> System -> Group Policy.

Включите политику (Enabled) и задайте время (в минутах) в следующих настройках:

  • This setting allow you to customize how often Group Policy is applied to computer (от 0 до 44640 минут) – как часто клиент должен обновлять настройка GPO (если указать тут 0 – политики начнут обновляться каждые 7 секунд – не стоит этого делать);
  • This is a random time added to the refresh interval to prevent all clients from requesting Group Policy at the same time (от 0 до 1440 минут) – максимальное значение случайного интервал времени, которые добавляется в виде смещения к предыдущему параметру (используется для уменьшения количества одновременных обращений к DC за файлами GPO от клиентов).

GPUpdate.exe – команда обновления параметров групповых политики

Всем администраторов знакома команда gpupdate.exe, которая позволяет обновить параметры групповых политик на компьютере. Большинство не задумываясь используют для обновления GPO команду gpupdate /force.

Эта команда заставляет компьютер принудительно перечитать все политики с контроллера домена и заново применить все параметры. Т.е. при использовании ключа force клиент обращается к контроллеру домена и заново получает файлы ВСЕХ нацеленных на него политик.

Это вызывает повышенную нагрузку на сеть и контроллер домена.

Простая команда gpudate применяет только новые/измененные параметры GPO.

Если все OK, должны появится следующие строки:

Updating policy…
Computer Policy update has completed successfully.
User Policy update has completed successfully.

Можно отдельно обновить параметры GPO из пользовательской секции:

gpupdate /target:user

или только политики компьютера:

gpupdate /target:computer /force

Если некоторые политики нельзя обновить в фоновом режиме, gpudate может выполнить logoff текущего пользователя:

gpupdate /target:user /logoff

Или выполнить перезагрузку компьютера (если изменения в GPO могут применится только во время загрузки Windows):

gpupdate /Boot

Принудительно обновление политики из консоли Group Policy Management Console (GPMC)

В консоли GPMC.msc (Group Policy Management Console), начиная с Windows Server 2012, появилась возможность удаленного обновления настроек групповых политик на компьютерах домена.

Теперь после изменения настроек или создания и прилинковки новой GPO, вам достаточно щелкнуть правой клавишей по нужному Organizational Unit (OU) в консоли GPMC и выбрать в контекстном меню пункт Group Policy Update. В новом окне появится количество компьютеров, на которых будет выполнено обновление GPO. Подтвердите принудительное обновление политик, нажав Yes.

Затем GPO по очереди обновяться на каждом компьютере в OU и вы получите результат со статусом обновления политик на компьютерах (Succeeded/Failed).

Данная команда удаленно создает на компьютерах задание планировщика с командой GPUpdate.exe /force для каждого залогиненого пользователя. Задание запускается через случайный промежуток времени (до 10 минут) для уменьшения нагрузки на сеть.

Если компьютер выключен, или доступ к нему блокируется файерволом напротив имени такого компьютера появится надпись “The remote procedure call was cancelled”.

По сути этот функционал дает тот же эффект, если бы вы вручную обновили настройки политик на каждом компьютере командой GPUpdate /force.

Invoke-GPUpdate – обновление GPO из Powershell

Также вы можете вызвать удаленное обновление групповых политик на компьютерах с помощью PowerShell комнадлета Invoke-GPUpdate (входит в RSAT). Например, чтобы удаленно обновить пользовательские политики на определенном компьютере, можно использовать команду:

Invoke-GPUpdate -Computer “corp\Computer0200” -Target “User”

При запуске командлета Invoke-GPUpdate без параметров, он обновляет настройки GPO на текущем компьютере (аналог gpudate.exe).

В сочетании с командлетом Get-ADComputer вы можете обновить групповые политики на всех компьютерах в определенном OU:

Get-ADComputer –filter * -Searchbase “ou=Computes,OU=SPB,dc=winitpro,dc=com” | foreach{ Invoke-GPUpdate –computer $_.name -force}

или на всех компьютерах, которые попадают под определенный критерий (например, на всех Windows Server в домене):

Get-ADComputer -Filter {enabled -eq “true” -and OperatingSystem – '*Windows Server*' }| foreach{ Invoke-GPUpdate –computer $_.name –RandomDelayInMinutes 10 -force}

При удаленном выполнении командлета Invoke-GPUpdate или обновления GPO через консоль GPMC на мониторе пользователя может на короткое время появиться окно консоли с запущенной командой gpupdate.

Источник: https://winitpro.ru/index.php/2020/07/09/obnovlenie-gruppovyx-politik-windows/

Удаленное обновление политик AD с Powershell Invoke-GPUpdate на примере

Обновление политик команда

Для обновления политик Active Directory, вместо команды CMD gpudate, в Powershell используется Invoke-GPUpdate. В этом статье будут рассмотрены примеры обновления политик как для всего AD, так и для отдельной OU.

Сама команда идет в комплекте с ролью AD или установленным RSAT.

Обновление GPO на одном компьютере

Представим, что у нас есть компьютер 'CL5' и мы хотим обновить политики, которые предназначены для компьютера или пользователя. Это можно сделать так:

Invoke-GPUpdate -Computer 'CL5'

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

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

  • RandomDelayInMinutes – где значение 0 обозначает “моментальное обновление”. Кроме этого можно указать значение в минутах, которое будет определять время обновления политик после запуска команды.

В документации Microsoft написано, что для значений больших чем 0 так же применяется “случайное смещение”, но как оно вычисляется мне выяснить не удалось. Такой подход используется, если вы ожидаете какую-то большую нагрузку на сеть или сервер.

В этом примере политики будут применены моментально:

Invoke-GPUpdate -Computer 'CL5' -RandomDelayInMinutes 0

При этом у пользователей появится следующее окно, которое нельзя никак скрыть:

Как и с gpupdate в CMD мы можем указать источник применения политики в Target:

  • User – обновить GPO предназначенные для пользователя;
  • Computer – обновить GPO для компьютера.

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

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

Пример работы с обоими ключами:

Invoke-GPUpdate -Computer 'CL5' -RandomDelayInMinutes 0 -Target 'User' -LogOff -Force

Force исключает ситуацию, где у пользователя будет запрошено подтверждение на какое-то действия (на выход например). Окно с примером, где этого ключа не было:

Возможные проблемы

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

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

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

  • Invoke-GPUpdate: The term 'Invoke-GPUpdate' not recognized as the name of a cmdlet…
  • Invoke-GPUpdate : Имя “Invoke-GPUpdate” не распознано как имя командлета, функции…

Вам так же будет интересно:

Обновление с использованием AD

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

Get-ADComputer -Filter *

У меня есть организационная единица 'Moscow', в домене 'domain.local'. Что бы найти компьютеры в этом OU можно использовать следующий синтаксис:

Get-ADComputer -Filter * -SearchBase “OU=Moscow,DC=domain,DC=local”

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

(Get-ADComputer -Filter * -SearchBase “OU=Moscow,DC=domain,DC=local”).Name | Invoke-GPUpdate -RandomDelayInMinutes 0 -Force -ErrorAction SilentlyContinue

Ключ -ErrorAction SilentlyContinue позволяет исключить вывод ошибок, которые связаны с выключенными компьютерами.

Если компьютеров в AD много и вам важна скорость обновления – лучше использовать циклы с задержкой:

$computers = (Get-ADComputer -Filter * -SearchBase “OU=Moscow,DC=domain,DC=local”).Name foreach ($computer in $computers){ # Получаем случайное число от 1 до 10 $random_number = Get-Random -Minimum 1 -Maximum 10 # Выполняем обновление с использованием случайного числа для задержки Invoke-GPUpdate -RandomDelayInMinutes $random_number -Force -ErrorAction SilentlyContinue } Вам так же будет интересно:

#powershell #ad

Источник: https://fixmypc.ru/post/udalennoe-obnovlenie-politik-ad-s-powershell-invoke-gpupdate-na-primere/

Обновление групповой политики в Windows

Обновление политик команда

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

Способ 1  Обновление групповой политики с помощью команды gpupdate /force

Шаг 1: Запустите окно командной строки

Windows 7

Нажмите кнопку «Пуск» , введите «cmd» (без кавычек) в строку поиска в самом низу меню «Пуск», а затем щелкните значок cmd.exe, который должен появиться вверху списка результатов.

Windows 10

Щелкните правой кнопкой мыши кнопку «Пуск» Нажмите на командную строку(Admin), чтобы открыть окно CMD.

Шаг 2: Запустите команду gpupdate /force

Использование команды PsExec для обновления групповой политики удаленных компьютеров PsExec

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

PSExec.exe \\ComputerName GPupdate.exe /force

Просто замените Computername на фактическое имя хоста компьютера

Чтобы выполнить GPUpdate.exe на группе компьютеров, указанных в текстовом файле, используйте команду PSExec.exe:

PSExec.exe @Computers.TXT GPUpdate.exe /force

Шаг 3: Перезагрузите компьютер

В окне командной строки введите gpupdate /force и нажмите клавишу Enter на клавиатуре. Строка «Обновление политики …» должна появиться в окне командной строки ниже, где вы только что набрали.

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

Иногда вам не будет предложено перезагрузить компьютер или выйти из системы после обновления. Тем не менее, вам все равно следует перезагрузить компьютер, если ИТ-специалист не примет иного решения.

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

Способ 2. Использование консоли управления групповой политикой

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

Шаг 2: Щелкните правой кнопкой мыши, чтобы обновить

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

Я собираюсь обновить свой родительский OU «ADPRO Computers», в этом OU есть несколько подразделений, разбитых на отделы. Это запустит обновление групповой политики на всех компьютерах.

Способ 3: использование Powershell Invoke-GPUpdate

В Windows 2012 можно принудительно выполнить немедленное обновление с помощью команды powershell invoke-GPUupdate . Эта команда может использоваться для обновления клиентов Windows 10 и Windows 7.

Вам потребуется установленный Powershell, а также консоль управления групповыми политиками (GPMC).

Вот команда:

Invoke-GPUpdate -Computer COMPUTER-02 = RandomDelayMinutes 0

RandomDelayMinutes 0 гарантирует, что политика обновляется сразу, а не ..

Единственным недостатком использования этой команды является то, что клиенты получат всплывающее окно CMD, как показано ниже. Отображается только около 3 секунд, затем закрывается.

Если вы хотите использовать команду PowerShell для принудительного обновления на всех компьютерах, вы можете использовать эти команды:
PS C:\> $computers = Get-ADComputer -Filter * PS C:\> $computers | ForEach-Object -Process {Invoke-GPUpdate -Computer $_.name -RandomDelayInMinutes 0 -Force}

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

Источник: http://f1-it.ru/obnovlenie-gruppovoy-politiki-v-windows.html

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

    Добавить комментарий

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.