Как исправить ошибку «Запуск сценариев отключен в этой системе» в Powershell?
Powershell - это среда автоматизации задач и управления, которая была разработана и опубликована Microsoft. Он состоит из оболочки командной строки и связанного с ней языка. Пользователи могут выполнять многочисленные командлеты в программе. Однако совсем недавно поступало много отчетов, в которых пользователи не могут запустить скрипт, и в Powershell появляется ошибка « Запуск сценариев отключен в этой системе » или « Выполнение сценариев отключено в этой системе ».,
В этой статье мы обсудим причину, по которой эта ошибка может быть вызвана, и некоторые жизнеспособные решения для ее исправления навсегда. Обязательно следуйте инструкциям тщательно и точно, чтобы избежать конфликта.
Что вызывает ошибку «Запуск сценариев отключен в этой системе»?
Получив многочисленные отчеты от нескольких пользователей, мы решили разобраться в этом вопросе, и наши исследования показывают, что ошибка вызвана следующей проблемой.
- Отключенные сценарии: для того, чтобы он работал, каждый сценарий, который вы запускаете на Powershell, должен иметь определенный уровень проверки из надежных источников. Тем не менее, в некоторых случаях, даже если сценарий имеет проверку, он по-прежнему останавливается из-за ограниченного доступа. Дело в том, что в Windows есть «Политика выполнения», которую сценарий необходимо обойти для выполнения. Если для политики выполнения установлено значение «Restricted», то на компьютере нельзя будет запустить скрипт.
Теперь, когда у вас есть общее представление о природе проблемы, мы будем двигаться к ее решению.
Решение 1. Добавление кода
Если вы хотите запустить конкретный сценарий на своем компьютере без необходимости менять политику выполнения, вы всегда можете добавить в команду фрагмент кода, который предоставит доступ к сценарию через политику. Для этого:
- Нажмите « Windows » + « R », чтобы открыть окно запуска.
- Введите « Powershell » и одновременно нажмите « Shift » + « Ctrl » + « Enter », чтобы предоставить административный доступ.
Набрав в «Powershell» и нажав «Shift» + «Alt» + «Enter» - Введите команду для выполнения определенного сценария, как следующая команда.
c: \> powershell -ExecutionPolicy ByPass -File script.ps1
- Нажмите « Enter » и проверьте, сохраняется ли проблема.
Решение 2. Изменение политики выполнения
Поскольку политика выполнения предоставляет доступ к Powershell для запуска определенного сценария, если для него установлено ограничение, он блокирует выполнение всех сценариев. Существуют различные режимы, в которых вы можете установить политику в зависимости от вашей ситуации. Эти режимы:
- Restricted: этот режим не позволяет запускать какие-либо сценарии на компьютере.
- AllSigned: при выборе этого режима на компьютере могут быть запущены только политики, подписанные доверенным издателем.
- RemoteSigned: все загруженные сценарии должны быть подписаны доверенным издателем.
- Неограниченный: нет никаких ограничений на любой сценарий вообще.
Теперь, когда вы знаете уровни, на которые можно установить политику выполнения, вы можете легко выбрать лучший для вас в зависимости от ваших требований. Чтобы изменить политику исполнения:
- Нажмите « Windows » + « R », чтобы открыть окно запуска.
- Введите «Powershell» и одновременно нажмите « Shift » + « Ctrl » + « Enter », чтобы предоставить административный доступ.
Набрав в «Powershell» и нажав «Shift» + «Alt» + «Enter» - Введите следующую команду и нажмите «Enter», чтобы выполнить ее.
Set-ExecutionPolicy Remotesigned
Примечание . Слово « RemoteSigned » следует заменить на уровень безопасности, который вы хотите, как указано выше.
- Нажмите « Y », чтобы указать «Да», и это изменит групповую политику до желаемого уровня.
Изменение групповой политики - Проверьте, сохраняется ли проблема.