Копирование файлов и папок через групповую политику

Обновлено 19.01.2019

копирование logoДоброго времени суток! Многоуважаемые читатели и просто гости IT портала Pyatilistnik.org. Рад, что вы вновь на страницах моего ресурса. В прошлый раз мы с вами рассмотрели, что делать когда у вас в системе отсутствовала библиотека VCRUNTIME140.dll. Сегодня я хочу поговорить, еще об одной вещи которая можете оптимизировать работу пользователей и сохранить много времени системному администратору. Сегодня я покажу, как скопировать файл или папку с помощью групповой политики, автоматизировав данный процесс.

Способы копирования файлов и папок

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

  • Интерактивное, ручное- это когда вы сами копируется, что нужно в нужное место в графическом интерфейсе.
  • С помощью скриптов, где используются утилиты Robocopy или Xcopy
  • Через специальные файловые менеджеры, например Total Commander, Far
  • Через групповую политику в окружении домена Active Directory, данный метод я и хочу осветить в данной публикации.

Постановка задачи

И так есть всем известная программа 1С. Бывают случаи, что необходимо пользователю производить очистку локального кэша. Для этого был написан специальный скрипт. Необходимо его скопировать нужным пользователям на рабочий стол, чтобы они могли его выполнять в нужный момент. Если людей 1 или два, то проблем нет, если же их сотни, да и еще добавляются новые, то правильный вариант, это автоматизация. И глупо было бы не использовать функционал групповых политик, раз уж мы в домене Active Directory.

Создание политики копирования на рабочий стол

Первым делом у вас должна быть сетевая папка из которой будет производится копирование файла или каталога. В моем случае, это сетевая шара \\DC01\share\ClearCache1C.js, где лежит нужный мне скрипт очистки кэша 1С. Вот этот файл мне нужно поместить на рабочий стол пользователя или компьютера. Почему может потребоваться положить файл на общий рабочий стол компьютера. Очень часто бывает, что есть компьютеры, где нет постоянного пользователя, там сотрудники могут работать по сменам и пересаживаться на удобное для них место, и проще применить политику один раз на компьютер, чем таскать за собой по всем, но тут уже все зависит от задачи, лично я применяю ее для пользователя, для меня, это более безопасно.

Сетевая шара откуда копируется файл

Далее вам необходимо создать отдельную группу безопасности, в которую вы будите помещать пользователей и компьютеры, к которым нужно будет применять политику, это делается для фильтрации. Напоминаю, что все это делается в оснастке Active Directory - Пользователи и компьютеры.

Группа безопасности которой будет скопирован файл

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

Создание политики копирования файла

Тут как вы знаете есть политики для компьютеров и отдельные для пользователей, все зависит от вашей задачи по распространению. В моем примере я на первом этапе применю политику на сотрудника, по имени Геннадий Барбоскин. Переходим по пути:

Конфигурация компьютера - Настройка - Конфигурация Windows - Файлы

Щелкаем тут правым кликом и из контекстного меню выбираем пункт создать файл.

Копирование файла через GPO-04

Тут у вас будет три действия:

  1. Во первых вам нужно понять, что будет с файлом. В пункте действие, вам нужно указать, будет ли он создан, обновлен, заменен или удален.
  2. После того, как вы определились с действием, вы должны указать исходный путь, откуда нужно скопировать файл, я в примере указал сетевую шару. Обратите в пути прописывается все полностью до файла с расширением.
  3. И конечно же задаем конечный путь, тут можно указать как обычный путь в виде C:\Temp, либо же как у меня, с использованием переменных сред Windows , где %HOMEPATH% означает домашний каталог пользователя и полный путь %HOMEPATH%\Desktop\, как раз и приведет на рабочий стол, независимо от логина пользователя. Так же пишем в пути еще и полное имя файла и его расширение, обратите внимание, что если у вас файл источника на английском языке, то это не мешает его на конечном пути сделать на русском, для удобства отображения.

Параметры копируемого файла через GPO

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

Копирование файла через GPO-07

Так же хочу обратить ваше внимание на вкладку "общие параметры", тут вы найдете вот такие пункты:

  • Остановить обработку элементов в этом расширении при возникновении ошибки
  • Выполнять в контексте безопасности вошедшего пользователя (параметр политики пользователя)
  • Удалить этот элемент, когда он более не применяется
  • Применить один раз и не применять повторно
  • Нацеливание на уровень элемента

Копирование файла на рабочий стол через групповую политику

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

Копирование файла через GPO-09

Когда вы добавили нужную группу ф фильтр, необходимо удалить из нее группу "Прошедшие проверку".

Фильтрация применения групповой политики

Если вы делаете политику на пользователя, то политика не применится, так как ее не сможет прочитать компьютер, для этого вам необходимо на вкладке "Делегирование" добавить группу содержащую нужные компьютеры или же группу "Компьютеры домена"

копирование папок через групповую политику

Далее задайте уровень чтения, этого будет достаточно.

Копирование файла через GPO-12

Пробуем применить политику. Перелогинимся пользователем Барбоскин Геннадий на рабочей станции и проверим, с копировался ли файл на рабочий стол.

Скопированный файл через групповую политику

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

Теперь покажу небольшие нюансы копирования файлов на компьютер, например на рабочий стол. Путь политики там такой же:

Политика компьютера - Настройки - Конфигурация Windows - Файлы

Указываю, что также хочу пользователю скопировать файл на рабочий стол и беру для этого все тот же путь с переменной %USERPROFILE%\Desktop\Очистка кэша 1С.js\

Копирование файла через GPO-14

Не забываем отфильтровать политику, удалив из нее авторизованные пользователи и добавив нужную группу, в моем примере, это "Компьютеры домена".

Копирование файла через GPO-15

В итоге у вас политика отработает, но вот на рабочий стол у вас файл скопирован не будет, точнее он скопируется на рабочий стол общего профиля, из которого создаются новые рабочие столы. Вы его найдете по пути C:\Users\Default\Desktop, заведомо до этого включив скрытые файлы в Windows.

Скопированный файл на рабочем столе с использованием политики GPO

Чтобы это обойти, вам нужно в настройках политики изменить путь на C:\Users\Public\Desktop\Очистка кэша 1С.js (C:\Users\Public\Desktop\ соответствует пути C:\Пользователи\Общие\Общий рабочий стол\)

Копирование файла через GPO-17

Пробуем опять перезагрузиться и видим, что все отлично скопировалось. Вот так вот средствами групповой политики вы можете автоматизировать данный процесс. На этом пост можно считать полностью завершенным, с вами был Иван Семин, автор и создатель IT портала Pyatilistnik.org.

Автор - Сёмин Иван

6 Responses to Копирование файлов и папок через групповую политику

  1. Александр:

    Данный способ подходит только для файлов. Как выполнить копирование папки с содержимым через GPO?

  2. Иван Семин:

    Утилита Robocopy

  3. Юрий:

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

  4. Иван Семин:

    Можно сделать сценарий Powershell, с проверкой разрядности. Либо вы можете создать две политики, но каждую фильтровать WMI фильтрами, в зависимости от архитектуры

  5. Юрий:

    Есть ли возможность копирования в зависимости от ОС 32/64

  6. Олег:

    Можно использовать переменную среды windows %ProgramFiles% и %ProgramFiles(x86)% например, если тебе нужно какой-нибудь конфиг у ПО поправить всем пользователям.

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

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