Назад | Перейти на главную страницу

Запуск сценария на компьютерах-членах домена Active Directory без перезагрузки или входа в систему

У меня есть домен Active Directory, работающий на Windows Server 2003 R2. Клиенты представляют собой смесь Windows XP SP2, Vista и Windows 7. Я хочу запустить сценарий (пакетный файл, но, возможно, сценарий VB) на каждой машине один раз. Я не хочу, чтобы это происходило при входе в систему, выходе из системы, запуске или завершении работы. Я просто хочу, чтобы это произошло как можно скорее и однажды.

Есть ли относительно безболезненный способ сделать это, который будет работать со всеми типами клиентов?

Спасибо.

ОБНОВИТЬ: Я должен был упомянуть об этом изначально: на многих ПК стоят дешевые 5-портовые маршрутизаторы, подключенные к разъему Ethernet. Представьте, что пять аспирантов делят офис. Таким образом, каждый компьютер в офисе имеет IP-адрес RFC1918. Я нахожусь на публичной стороне маршрутизатора, поэтому я не могу подключиться напрямую к ПК. Следовательно, PsExec или WMI не будут работать. WinRM может, но на большинстве ПК он не установлен. Я думаю, что мой единственный вариант - как-то использовать GPO, возможно, запланировать задачу для запуска скрипта с сетевого диска.

Я бы сказал использовать psИнструменты psexec.exe для удаленного запуска сценария.

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


В ответ на все комментарии, поскольку они могут разговаривать с контроллерами домена, чтобы они находились в домене, вы должны иметь возможность перейти на контроллер домена и запустить сценарий psexec оттуда.

Это похоже на работу для psexec. PSexec позволит вам удаленно выполнить сценарий на всех компьютерах в домене, если вы укажете "\" в качестве компьютера. Вам нужно будет добавить в свой сценарий какую-то логику, чтобы оставить какую-то индикацию в системе, которая завершена, и проверить это перед запуском.

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

Вы также можете написать сценарий (PS, VBScript и т. Д.) На выполнить его через WMI, но, как отмечали другие, psTools, вероятно, является самым простым способом.

Я хочу запустить сценарий (командный файл, но, возможно, сценарий VB) на каждой машине один раз. Я не хочу, чтобы это происходило при входе в систему, выходе из системы, запуске или завершении работы. Я просто хочу, чтобы это произошло как можно скорее и однажды. Есть ли относительно безболезненный способ сделать это, который будет работать со всеми типами клиентов?

VBscript.

На многих ПК стоят дешевые 5-портовые маршрутизаторы, подключенные к разъему Ethernet. Представьте, что пять аспирантов делят офис. Таким образом, каждый компьютер в офисе имеет IP-адрес RFC1918.

Я удивлен, что это вообще работает. Я предполагаю, что все маршрутизаторы имеют разные подсети; в противном случае ваш домен будет в полном хаосе, так как у вас будет любое количество клиентов, пытающихся получить один и тот же IP-адрес 192.168.x.x ...

Я нахожусь на публичной стороне маршрутизатора, поэтому я не могу подключиться напрямую к ПК. Следовательно, PsExec или WMI не будут работать.

Это твоя первая проблема. Вам нужно попасть «внутрь» сети каждого из них. Похоже, что удаленные компьютеры находятся за каким-то брандмауэром NAT, и это вызовет самые разные проблемы. Технически, «в идеальном мире» ваш сервер должен находиться в той же сети, что и ваши клиенты. Клиенты подключаются через VPN? Если так, то это будет ваш билет "в".

Я думаю, что мой единственный вариант - как-то использовать GPO, возможно, запланировать задачу для запуска скрипта с сетевого диска.

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


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