Возможно ли, что я смогу настроить список объектов групповой политики для вновь установленных компьютеров с большим количеством командных файлов (в основном, перемещение файлов), и они будут запускаться только один раз и никогда больше?
Я новичок в этом и не нашел хороших решений по этому поводу. Каждая помощь на счету :) Спасибо
В HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
Раздел реестра был бы наиболее естественным местом для размещения элементов, которые вы хотите запустить только один раз, потому что команда удаляется из этого списка при запуске. Однако редактирование реестра с использованием настроек групповой политики может быть несколько обременительным.
Вы также можете использовать настройки групповой политики для развертывания немедленной (запланированной) задачи, которая запускается один раз, а затем удаляется. Немедленная задача похожа на стандартную запланированную задачу, поэтому в одной задаче можно выполнять несколько действий. Есть флажок «Применить один раз и не применять повторно», который означает, что его можно применить (и, следовательно, существовать) только один раз.
Настройте элемент реестра: http://technet.microsoft.com/en-us/library/cc753092.aspx
Настроить немедленную задачу: http://technet.microsoft.com/en-us/library/dd851779.aspx
Дополнительное примечание
Этот вариант подходит только для клиентских версий Windows Vista и выше, а также для клиентов Windows XP с Расширения на стороне клиента GPP патч установлен. Я очень рекомендую его использовать.
Я называю такие вещи GPO «лазейками» и делаю это достаточно часто (например, для работы с компьютерами, недавно присоединенными к домену). Если у меня есть сценарий, который я хочу выполнить один и только один раз на клиентах, я обычно делаю это:
Создайте группу в AD «Сценарий лазейки уже выполнен» и предоставьте права «Компьютеры домена», разрешающие им «Все проверенные записи» и «Записывать участников» (разрешение, зависящее от свойства).
Создайте мой сценарий запуска и добавьте net group "Trapdoor Script Already Executed" /domain /add %computername%$
в конце сценария
Создайте объект групповой политики, ссылающийся на мой сценарий запуска, и добавьте в объект групповой политики разрешение «Сценарий скрытой двери уже выполнен» / «Запретить применение групповой политики».
Это приводит к тому, что машины добавляются в группу «Сценарий Trapdoor Already Executed» после того, как они выполнили сценарий, и при будущих загрузках им отказывают в праве на повторное выполнение сценария.
Редактировать:
Эта стратегия работает очень плохо, когда клиентские компьютеры не удаляются из групп, но иным образом переделываются или перенаправляются, и им необходимо снова запустить сценарий «лазейки».
В таких случаях я предпочитаю записывать в реестр "канарейечное" значение, которое сценарий может проверить простым REG QUERY
и залог на errorlevel
если значение найдено. Обратной стороной такого подхода является то, что сценарий выполняется при каждой загрузке (тогда как ограничение приложения GPO через членство в группе предотвращает выполнение сценария и требует времени при каждой загрузке). Теоретически вы можете использовать фильтрацию WMI для нацеливания на GPO на основе значений реестра, но в прошлом производительность фильтрации WMI на основе значений реестра была КАКОЙ УЖАС.
Я добился успеха со стратегией "группы лазейки", когда я могу заставить технических специалистов Удалить компьютеры из AD и повторно присоединяются к ним при «переработке» их, вместо того, чтобы просто сохранять объект-компьютер и его членство в группах. Это сложная задача, но это единственный способ, который я мог придумать, который не требует штрафов за выполнение скрипта при каждой загрузке.
пожалуйста, сначала прочтите Эта статья полный.
Примечание 1. Загрузите и установите GPMC и
Примечание 2: еще один ответ, который полезен только в Windows 8 здесь: Импорт и экспорт начальных объектов групповой политики