пятница, 19 июля 2013 г.

PSExec. Запуск удаленных процессов

Каждый автоматизатор рано или поздно сталкивался с задачей запуска процессов на удаленной машине. Сегодня рассмотрим, одну из программ, позволяющую это сделать.
PsExec – небольшой тул, который позволяет выполнять программы на удаленным машинах. Он входит в набор утилит пакета PSTools, разработанный замечательной компании Sysinternals, знакомую также по небезызвестной программе для мониторинга процессов Windows – Process Explorer.
Скачать последнюю версию PSTools и подробную информацию о нем можно на сайте http://technet.microsoft.com.


Пример

Для иллюстрации работы рассмотрим запуск процесса на удаленной машине. В моем случае это будет виртуальная машина VMWare vSphere.

Начнем с малого – запустим notepad на удаленной машине

> PsExec.exe \\192.168.0.1 -u Administrator -p 12345 notepad

Здесь ничего сложного нет, передаем PsExec параметры соединения – ip, логин и пароль.

Ну и в конце указываем программу, которую необходимо запустить (также можно указать абсолютный путь до notepad).
Местами возникают ситуации, когда необходимо запустить удаленный процесс в интерактивном режиме. Несколько модифицируем пример выше.

> PsExec.exe \\192.168.0.1 -u Administrator -p 12345 –i 0 notepad

Ключик –i, говорит PsExec, что необходимо получить доступ к рабочему столу, параметр «0» - номер сессии пользователя на удаленной машине. Данная команда помогает, когда необходимо снять скриншот окна запущенного процесса.

Еще один полезный ключик, который я использую –d, он позволяет не ждать окончания выполнения программы (когда важен просто запуск программы).


Вывод

PsExec – замечательная тулза позволяющая без особого геморроя запускать процессы на удаленных машинах.

Более подробную информацию можно найти в официальной документации на http://technet.microsoft.com, а так же советую почитать замечательную стать в блогах http://blogs.technet.com/b/ru_forum_support/archive/2010/12/17/psexec.aspx

Комментариев нет:

Отправить комментарий