Запуск процесса на удалённом компьютере – PowerShell Remoting

WinRM

Одна из главных возможностей PowerShell 2.0 это Remoting, возможности удалённого выполнения команд. Так как PowerShell 2.0 на момент написания этого находится в стадии CTP3 (а еще входит в состав Window7/2008R2 beta1) применять его в реальном окружении пока рановато, но готовиться и изучать надо уже сейчас, потому как таких возможностей как PS Remoting ни одно другое средство не предоставляет. Тем более что PS 2.0 вошел в достаточно стабильную стадию, и больших изменений перед релизом уже не планируется.

PowerShell Remoting построен на основе WS-Management о котором я уже рассказывал, так что наследует все его возможности (работа через http(s), шифрование, и т.д.) и требует WinRM 2.0 для работы (CTP3 версию можно загрузить тут, а в Windows7+ он встроен).

Разумеется следуя стратегии Secure by Default использование WinRM по умолчанию отключено. Включить можно либо командой Enable-PSRemoting либо в Windows Server 2008 R2 с помощью опции Server Manager’а Configure Server Manager Remote Management. AFAIK в масштабах организации это можно будет легко сделать с помощью групповых политик.

Ну а затем наслаждаемся 🙂 Простой запуск команд и скриптов на удалённых компьютерах можно выполнять с помощью командлета Invoke-Command:

remoting1

Стоит обратить внимание что результаты команд передаются не просто в виде текстового вывода, а как объекты, и с ними можно работать дальше обращаясь к их свойствам. Можно выполнять команду сразу на множестве компьютеров, или несколько команд в одной постоянной сессии. Но об этом в другой раз 😉

Интерактивную оболочку на другом компьютере запускает командлет Enter-PSSession:

remoting2

Как можно заметить, к приглашению командной строки добавляется имя удалённого компьютера. Выход из сессии осуществляется командлетом Exit-PSSession, но можно и просто exit 🙂

Я обязательно постараюсь рассказать тут и о других возможностях PS Remoting, но уже не в этом посте. Следите за обновлениями 🙂

комментария 2 to “Запуск процесса на удалённом компьютере – PowerShell Remoting”

  1. Igg Says:

    Спасибо, очень интересно, хотелось бы прочесть продолжение.

  2. Xaegr Says:

    2 lgg: Моя статья полностью посвященная удалённому запуску процессов с помощью разных средств, вышла в апрельском номере Windows IT Pro RE, очень рекомендую 🙂


Обсуждение закрыто.