Понадобилось мне в один прекрасный момент оперативно распространить RDP-файл подключения к серверу удалённых рабочих столов (RDS) для достаточно большого количества пользователей. Чтобы не мучать специалистов тех.поддержки ручными операциями на пользовательских компьютерах, решил попробовать реализовать задачу с помощью System Center 2012 Configuration Manager (SCCM). Итак, поехали…
Первым делом в SCCM нужно создать коллекцию на основе группы безопасности AD, которая предоставляет доступ к серверу RDS. Членство в коллекции настроим на основе запроса:
select SMS_R_USER.ResourceID,SMS_R_USER.ResourceType,SMS_R_USER.Name,SMS_R_USER.UniqueUserName,SMS_R_USER.WindowsNTDomain from SMS_R_User where SMS_R_User.UserGroupName = "Domian\\My-Group"
В свойствах созданной коллекции разрешим использовать добавочные обновления для этой коллекции. Говоря простым языком, каждые 5 минут (значение по умолчанию) коллекция будет проводить инкрементальное обновление членства. Так же, на мой взгляд, будет не лишним изменить расписание полного обновления коллекции (значение по умолчанию - раз в неделю, в моём примере - каждый день).
Если по каким-то причинам Вас не устраивает значение по умолчанию, его всегда можно изменить в параметрах обслуживания сайта:
После нажатия кнопки “Изменить” откроется окно с одним параметром, который и отвечает за периодичность обновления в минутах.
Пока созданная нами коллекция заполняется, создадим простой CMD файл, который будет копировать RDP-файлы на рабочий стол пользователя.
REM меняем кодовую страницу на 1251, иначе кириллица будет в виде кракозябриков chcp 1251 REM проверяем существование папки ProgramData на системном диске и в зависимости от неё копируем файл. IF EXIST "%HOMEDRIVE%\ProgramData" ( copy "Сервер 1С.rdp" "%USERPROFILE%\Desktop" /Y ) ELSE ( copy "Сервер 1С.rdp" "%USERPROFILE%\Рабочий стол" /Y )
Да, действительно пришлось разделить для XP и Vista, 7. К моему удивлению, при вводе "%USERPROFILE%\Рабочий стол" в стандартный проводник Windows 7 я увидел приглашение на открытие файла “рабочий стол”. Самым простым методом определения версии ОС, на мой взгляд, является проверка существования каталога ProgramData.
Скопируем 2 файла (ярлык RDP и файл CMD) в общедоступную сетевую папку и вернёмся в консоль SCCM для того чтобы создавать пакет развёртывания.
На первом шаге мастера создания пакетов, присвоим имя и укажем где хранятся файлы пакета.
Второй шаг оставляем с настройками по умолчанию
Далее откроется мастер создания программ, где присвоим программе имя и пользуясь кнопкой обзор, выберем наш CMD файл. Выставим необходимые параметры выполнения:
Тип запуска – скрытый, для того чтобы пользователи не увидели окно командной строки;
Требования – только после входа пользователя, так как мы используем переменную %USERPROFILE%;
Режим – Конечно от прав пользователя.
Укажем, что наша программа может работать только на клиентских операционных системах. Нет нужды копировать RDP-файл на тот же сервер, так же как и на любой другой.
Далее необходимо распространить пакет на точку распространения и развернуть на сформировавшуюся коллекцию пользователей…
Намерение развёртывания – обязательное…
В расписании укажем, что выполнять развёртывание нужно “как можно скорее”. Повторный запуск, повторять только в том случае, если предыдущая попытка не удалась, так как нет смысла многократно перезаписывать файл…
Остальные шаги мастера можно оставить по умолчанию и наблюдать за развёртыванием.
В итоге данная программа SCCM будет отрабатываться на каждом компьютере c любым вошедшим на него пользователем, но не более одного раза. Созданная нами коллекция с пользователями постоянно обновляется и при добавлении нового пользователя в группу безопасности в AD на доступ к серверу, этот пользователь автоматически получит RPD-файл для подключения на свой рабочий стол.
Распространение именно RDP-файла принципиально лишь в нашем конкретном примере, и как нетрудно догадаться, описанным способом мы с легкостью сможем развернуть на компьютеры пользователей любые другие файлы.
Спасибо большое за статью! Подскажите на последнем скриншоте Вы указываете "Повторить запуск, если предыдущая попытка не удалась", где можно узнать/изменить параметры повторного запуска, так как у меня повторная попытка развертывания так и не происходит.