PowerShell говорит: «В этой системе отключено выполнение сценариев». - PullRequest
1489 голосов
/ 28 октября 2010

Я пытаюсь запустить файл , который вызывает скрипт из cmd.exe, и я получаю следующую ошибку:

Management_Install.ps1 не может быть загружен, так как в этой системе отключено выполнение сценариев.

Я пробежал

Set-ExecutionPolicy -ExecutionPolicy Unrestricted

и когда я запускаю Get-ExecutionPolicy из , я получаю Unrestricted обратно.

PS C:\Users\Administrator\> Get-ExecutionPolicy
Unrestricted

C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portal\Install\Scripts\> powershell .\Management_Install.ps1 1

WARNING: Running x86 PowerShell...

Файл C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portal\Install\Scripts\Management_Install.ps1 не может быть загружен, так как в этой системе отключено выполнение сценариев. Пожалуйста, смотрите "get-help about_signing" для более подробной информации.

В строке: 1 символ: 25

  • .\Management_Install.ps1 <<<< 1 </p>

    • CategoryInfo: Не указано: (:) [], PSSecurityException

    • FullyQualifiedErrorId: RuntimeException

C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portal\Install\Scripts\> PAUSE

Press any key to continue . . .

Система Windows Server 2008R2.

Что я делаю не так?

Ответы [ 23 ]

0 голосов
/ 16 января 2016

Несколько ответов указывают на политику выполнения. Однако для некоторых вещей требуется также «администратор рун». Это наиболее безопасно, поскольку нет никаких постоянных изменений в политике выполнения, и может быть преодолено ограничение администратора. Используйте с schedtask, чтобы начать партию с:

    runas.exe /savecred /user:administrator powershell -ExecutionPolicy ByPass -File script.ps1

от Джека Эдмондса выше и от Питера Мортенсена / Дханы из поста Как запустить приложение с правами администратора в командной строке?

0 голосов
/ 10 июля 2019

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

0 голосов
/ 02 июля 2015

Я обнаружил, что эта линия работает лучше всего для одного из моих серверов Windows Server 2008 R2. У пары других не было проблем без этой строки в моих скриптах PowerShell:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Force -Scope Process
...