Выполнение сценария Powershell из node js завершается неудачно - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть список скриптов Powershell, которые мы разработали для системного администрирования. Эти сценарии вызываются / выполняются из приложения Node JS с использованием модуля child_process. Все отлично работает на моем ноутбуке. После переноса приложения Node JS на сервер Centos7 я получаю такие ошибки:

The term 'Connect-VIServer' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

Я проверил политику выполнения Powershell - все установлено на Unrestricted. Я могу выполнить те же сценарии из командной строки без каких-либо ошибок после того, как я sh на сервер как пользователь root. Единственное отличие, которое я вижу, состоит в том, что приложение Node JS выполняется с использованием другого пользователя.

1 Ответ

0 голосов
/ 28 апреля 2020

Обнаружена проблема - все модули были установлены в каталог /root/.local/share/powershell/Modules, а в профиле пользователя, который запускает приложение Node JS, ничего не было установлено. Скопировал все модули в директорию пользователя приложения /home/ndjs/.local/share/powershell/Modules/ и теперь все работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...