Копирование файлов и папок на компьютеры пользователей с помощью GPO

Вы можете использовать групповые политики для копирования определенных файлов и папок на пользовательские компьютеры в домене Active Directory. Вы можете поместить файлы на Рабочий стол, в определенный каталог профиля пользователя или любую другую папку на локальном диске. С помощью GPO можно автоматически копировать и обновлять различные файлы конфигурации, INI-файлы, исполняемые файлы приложений (EXE), библиотеки DLL или сценарии из общего хранилища.

Копирование файлов с помощью предпочтений групповой политики

Например, я хочу скопировать два файла (app.exe и settings.xml) на рабочие столы некоторых пользователей домена Active Directory.

Создайте общую папку для хранения исходных файлов, которые вы хотите скопировать на компьютеры пользователей. Это может быть общая SMB-папка на файловом сервере или каталог SYSVOL на контроллере домена (эта папка автоматически реплицируется между всеми DC в домене с помощью DFS, ее удобно использовать, так как она помогает снизить нагрузку на WAN-каналы). Я поместил файлы в папку Sysvol \\woshub.com\SYSVOL\woshub.com\scripts\CorpApp. Убедитесь, что Аутентифицированные пользователи группа имеет права на чтение этой папки.

предоставить права на чтение исходной папки для аутентифицированных пользователейпредоставить права на чтение исходной папки для аутентифицированных пользователей

  1. Создайте новую группу безопасности Active Directory (CorpAPPUsers) с помощью оснастки Active Directory Users and Computers (dsa.msc). Вы можете создать группу с помощью этой команды PowerShell: New-ADGroup CorpAPPUsers -path 'OU=Groups,OU=DE,dc=woshub,DC=com' -GroupScope Global -PassThru –Verbose Добавьте пользователей в группу, на рабочий стол которой вы хотите автоматически копировать файлы с помощью GPO: Add-AdGroupMember -Identity CorpAPPUsers -Members asmith, bmuller, tweber
  2. Откройте консоль управления групповой политикой (gpmc.msc);
  3. Создайте новый объект GPO (CopyCorpApp) и привяжите его к OU, содержащему компьютеры пользователей; создать новый GPO copycorpappсоздать новый GPO copycorpapp
  4. Отредактируйте параметры GPO;
  5. Разверните следующий раздел «Параметры групповой политики»: Пользователь Конфигурация -> Предпочтения -> Настройки Windows -> Файлы;
    Если вам нужно копировать файлы на компьютеры независимо от вошедших в систему пользователей, лучше использовать аналогичную политику в разделе Computer Configuration (Конфигурация компьютера) GPO.
  6. Выберите Новый -> Файл;
  7. Укажите исходный файл в общей папке и путь к целевому файлу на компьютере, на который вы хотите его скопировать. Если указанный путь не существует, он будет создан автоматически. Обязательно укажите полное имя целевого файла (если указать только целевой каталог, то при копировании файла будет выдана ошибка «доступ запрещен»).
    Здесь можно выбрать конкретное имя файла или скопировать сразу все файлы из исходного каталога, указав символ подстановки *.
  8. Для копирования файлов с помощью GPO доступны 4 действия:
    Создать — файл копируется в целевой каталог только в том случае, если он там не существует;
    Заменить — целевой файл на компьютере пользователя всегда заменяется исходным файлом. Если исходный файл имеет большой размер, он будет копироваться каждый раз при обновлении GPO, что может привести к высокой нагрузке на сеть. Если вы хотите заменить файл только один раз, включите опцию «Применить один раз и не применять повторно» на вкладке «Общие»;
    Обновить (политика по умолчанию) — если файл уже существует, а исходный и целевой файлы отличаются, он не заменяется исходным (заменяются только атрибуты). Если файл не существует, он будет скопирован;
    Удалить — удалить целевой файл.GPO: Копирование файла из общей сети на рабочий стол пользователяGPO: Копирование файла из общей сети на рабочий стол пользователя
  9. Вы можете выбрать определенную папку на компьютере в качестве целевого каталога или использовать переменные среды. Чтобы скопировать файлы на Рабочий стол текущего пользователя, используйте %DesktopDir%
    Вы можете просмотреть полный список переменных окружения, доступных в GPP, нажав кнопку F3. предпочтения групповой политики системная переменная F3система предпочтений групповой политики, определяемая переменной F3Здесь приведен список переменных среды, которые можно использовать в качестве папок назначения при копировании файлов с помощью GPO:

    %AppDataDir% Папка Application Data текущего пользователя
    %CommonAppdataDir% Папка Application Data всех пользователей
    %CommonDesktopDir% Рабочий стол всех пользователей
    %CommonProgramsDir% Каталог программ всех пользователей.
    %CommonStartMenuDir% Папка меню «Пуск» всех пользователей
    %CommonStartUpDir% Каталог «Пуск» для всех пользователей
    %ComputerName% Имя компьютера NetBIOS
    %DesktopDir% Текущий пользователь Рабочий стол
    %DomainName% Текущее доменное имя
    %LocalTime% Местное компьютерное время
    %LogonDomain% Домен текущего пользователя
    %LogonServer% Имя контроллера домена, на котором аутентифицирован пользователь
    %LogonUser% Имя текущего пользователя
    %NetPlacesDir% Каталог «Мои сетевые места» пользователя
    %ProgramFilesDir% Каталог Program Files
    %ProgramsDir% Каталог программ пользователя
    %RecentDocumentsDir% Каталог «Последние документы» пользователя
    %SendToDir% Каталог «Отправить» пользователя
    %StartMenuDir% Меню «Пуск» текущего пользователя
    %StartUpDir% Папка «Пуск» текущего пользователя
    %SystemDir% Каталог Windows
    %SystemDrive% Диск, на котором установлена операционная система
    %TempDir% Папка User Temp
    %WindowsDir% Каталог Windows
  10. Чтобы скопировать файлы на рабочие столы конкретных пользователей, откройте файл Общие На вкладке настроек политики включите опцию Таргетинг на уровне элементов и нажмите кнопку Таргетинг;
  11. В следующем окне вы можете выбрать дополнительные параметры применения GPO. В моем случае я хочу ограничить политику следующими параметрами CorpAPPUsers только члены группы. Чтобы сделать это, нажмите Новый элемент -> Группа безопасности и укажите группу пользователей домена; Item-Level Targeting - применение GPO к определенной группеItem-Level Targeting - применение GPO к определенной группе
  12. Поскольку мы привязали GPO к организационной единице, содержащей компьютерные объекты (а не учетные записи пользователей), вам нужно включить режим обработки GPO loopback. Включите опцию Настройка режима обработки пользовательской обратной петли групповой политики = Объединить в разделе Конфигурация компьютера -> Политики -> Административные шаблоны -> Система -> Групповая политика; включить политику : Настройка режима обработки пользовательской групповой политикивключить политику : Настройка режима обработки обратной связи групповой политики пользователя
  13. Затем обновите параметры групповой политики на клиентских компьютерах (gpupdate /force или выйдите из системы и войдите снова), и убедитесь, что эти два файла были автоматически скопированы на рабочий стол пользователя. копирование файлов на рабочий стол пользователя с помощью групповой политикикопирование файлов на рабочий стол пользователя с помощью групповой политики

Таким образом, вы можете копировать скрипты, исполняемые файлы приложений или системные инструменты (PsTools, iperf, Portqry и т. д.) на пользовательские компьютеры. Вы можете скопировать файл в Program Files и поместить ярлык на него на рабочем столе с помощью GPO.

Если вам нужно скопировать каталог на компьютер пользователя, вам нужно использовать элемент групповой политики из раздела Конфигурация компьютера (пользователя) -> Предпочтения -> Параметры Windows -> Папки раздел. Этот параметр позволяет создать каталог на целевом компьютере. Затем можно скопировать исходные файлы в этот каталог, как описано выше.

копирование папки с помощью GPOкопирование папки с помощью GPO

Если файлы не копируются на компьютеры пользователей, вы можете использовать инструмент gpresult.exe, чтобы выяснить, почему групповая политика не применяется. Чтобы получить подробные журналы операций копирования файлов GPO, можно включить журнал в разделе Конфигурация компьютера -> Политики -> Административные шаблоны -> Система -> Групповая политика -> Ведение журнала и трассировка. Включите Настройка протоколирования и трассировки предпочтений файлов и выберите опцию Информация, предупреждения и ошибки режим в настройках политики.

включение регистрации предпочтений файлов gpoвключить протоколирование предпочтений в файле gpo

Теперь вы можете отслеживать все события и ошибки, связанные с копированием файлов через GPO на клиентах, в журнале Event Viewer -> Application. Включите фильтр по параметру Файлы групповой политики источник.

В моем случае ошибка Event ID 4098 появилась на компьютере пользователя при копировании файлов через GPO:

The user '%CommonDesktopDir%' preference item in the 'CopyCorpApp {GPO_GUID}' Group Policy Object did not apply because it failed with error code '0x80070005 Access is denied.' This error was suppressed.

ошибка gpo copy file error: 0x80070005 access denied event id 4098gpo copy file error: 0x80070005 access denied event id 4098

Эта проблема была решена путем предоставления NTFS-разрешений на чтение файлов в исходном каталоге для Аутентифицированные пользователи группа.

Как копировать папки и файлы с помощью сценария запуска GPO?

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

Давайте создадим сценарий запуска GPO для копирования всех новых (и измененных) файлов из исходного каталога на компьютеры пользователей:

  1. Создайте пакетный файл в Sysvol:
    CopyCorpApp.bat
    IF EXIST "C:\CorpApp" EXIT
    MD "C:\CorpApp"
    xcopy \\fs01\Sources\CorpApp\*.* C:\CorpApp /e /y /k /r /d /i
    В некоторых случаях для копирования файлов лучше использовать более мощную команду robocopy.

    Пакетный скрипт: копирование новых и измененных файлов из общей папки в WindowsПакетный скрипт: копирование новых и измененных файлов из общей папки в Windows

    Этот скрипт скопирует всю структуру каталога и все файлы с атрибутами. Копируются только новые или измененные файлы. Это означает, что при каждом запуске сценария, если в исходном каталоге нет изменений, команда xcopy не будет перезаписывать файлы.
  2. Создайте новый GPO (как описано выше) и назначьте его OU с компьютерами пользователей;
  3. Развернуть Конфигурация компьютера -> Политики -> Параметры Windows -> Сценарии (запуск/выключение). Выберите Запуск;
  4. Нажмите на кнопку Добавить кнопку и укажите UNC-путь к вашему скрипту на SysVol;запуск пакетного скрипта запуска gpo запустить пакетный скрипт запуска gpo
  5. Перезагрузите компьютер пользователя и убедитесь, что исходная папка была успешно скопирована.копирование папки с вложенными папками и файламикопирование папки с вложенными папками и файлами

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *