Às vezes, o Windows o impedirá de usar o PowerShell, citando uma opção que desabilita a execução de scripts. Veja como consertar isso.

Você está executando alguns comandos no PowerShell e, de repente, vê uma mensagem de erro que diz: “O PowerShell não pode ser carregado porque a execução de scripts está desabilitada neste sistema”.

Quer saber o que causa esse problema e como você pode resolvê-lo? Vamos levá-lo através dos métodos fáceis que podem ajudá-lo a resolver esse problema de uma vez por todas.

Vamos mergulhar!

1. Execute o PowerShell no modo de administrador

Você está executando o PowerShell sem direitos administrativos adequados? Se sim, então talvez seja aí que está o problema.

Então, vamos explorar as etapas que você deve aplicar para executar a ferramenta no modo administrador:

  1. Imprensa Vitória + X para abrir o menu de acesso rápido.
  2. Selecione os Windows PowerShell (Administrador) opção.

E se isso não ajudar, confira as várias maneiras de abrir o Windows PowerShell. Mas você deve se concentrar apenas nos métodos que mostram como executar a ferramenta com privilégios administrativos.

instagram viewer

2. Alterar a política de execução no PowerShell

Em alguns casos, alterar a política de execução pode ajudar. Mas antes de explorarmos as soluções, vamos primeiro mostrar o que é a política de execução e como ela funciona.

O que é a política de execução e como ela funciona?

A política de execução é um recurso de segurança que controla a maneira como você executa scripts do PowerShell em seu dispositivo. Ele simplesmente determina quais tipos de scripts podem ser executados e quais devem ser evitados. A melhor parte é que você pode configurar esta política ao seu gosto.

Aqui estão as opções que você pode escolher ao configurar a política de execução:

  • Restrito: esta política proíbe você de executar qualquer script do PowerShell.
  • irrestrito: permite executar qualquer script, mas mostra uma mensagem de aviso quando você executa scripts suspeitos.
  • RemoteAssinado: esta política requer uma assinatura digital quando você executa os scripts baixados online. No entanto, não requer uma assinatura para scripts locais.
  • Desviar: Isso permite que você execute qualquer script sem quaisquer restrições. Ao contrário da política "Irrestrita", a política "ByPass" não mostrará nenhuma mensagem de aviso quando você executar scripts suspeitos. Portanto, sempre aplique esta política somente ao executar scripts legítimos.
  • Todos assinados: esta política executa apenas scripts assinados por um editor confiável.

Agora, se você usa o PowerShell regularmente, talvez queira alterar a política de execução de tempos em tempos. No entanto, algumas políticas de execução podem exibir mensagens de erro quando você executa seus scripts do PowerShell.

Por exemplo, ativar as políticas “Restricted”, “AllSigned” ou “RemoteSigned” pode levar a mensagens de erro como o erro "scripts em execução desativados".

Para resolver o problema, bastaria alterar a política de execução para “Unrestricted” ou “ByPass”. Mas isso não é tudo; você também precisaria decidir como a política deveria ser implementada. Por exemplo, você deseja aplicar a política para todos os usuários ou apenas para sua sessão atual do PowerShell?

Vamos explorar todos os adicionais Comandos do PowerShell você terá que adicionar ao alterar a política de execução:

  • Usuário atual: esta política só será aplicada a todas as sessões do PowerShell da pessoa que está conectada no momento no dispositivo.
  • Máquina local: Aplica-se a todos os usuários que possuem uma conta no dispositivo. Esta política só pode ser configurada por usuários locais com privilégios administrativos.
  • Processo: aplica-se apenas à sessão atual do PowerShell. Isso significa que você terá que executar a política novamente se iniciar uma nova sessão.
  • MachinePolicy: Esta política se aplica a todos os usuários que possuem uma conta em seu dispositivo. No entanto, ele só pode ser configurado por administradores de rede que tenham as permissões apropriadas. Mas geralmente é possível para os administradores locais configurar essa diretiva de execução usando o Editor de Diretiva de Grupo Local.
  • UserPolicy: aplica-se a todas as sessões do PowerShell e aos scripts executados por um determinado usuário.

Agora que tudo está claro, vamos explorar como você pode executar as políticas relevantes para lidar com o problema "O PowerShell não pode carregar".

Como alterar a política de execução para "irrestrito"

A melhor maneira de lidar com o problema em questão é alterar a política de execução para "sem restrições". Mas antes disso, você precisa verificar como cada política de execução está configurada.

Aqui estão as etapas para verificar como as políticas de execução estão configuradas:

  1. Imprensa Vitória + X para abrir o Menu de acesso rápido.
  2. Selecione Windows PowerShell (Administrador) das opções.
  3. Digite o seguinte comando e pressione Digitar:
Get-ExecutionPolicy -Lista

Isso deve mostrar como as políticas de execução são configuradas para diferentes usuários e sistemas.

Para alterar a política de execução para “Irrestrito” para o usuário ativo atual, digite o seguinte comando e pressione Digitar:

Definir-Política de Execução Irrestrita -Escopo Usuário atual

Para alterar a política de execução para “Irrestrito” para todos os usuários, digite o seguinte comando e pressione Digitar:

Definir-Política de Execução Irrestrita -Escopo Máquina local

Quando terminar de executar o comando, feche o PowerShell e reinicie o PC para salvar essas alterações.

Como alterar a política de execução para "ByPass"

A política de execução "ByPass" permitirá que você execute qualquer script do PowerShell sem problemas. Mas lembre-se de que também pode permitir que você execute arquivos com bugs. Portanto, sempre configure essa política de execução somente ao executar arquivos confiáveis ​​do PowerShell.

Para alterar a política de execução para “ByPass” para o usuário ativo atual, digite o seguinte comando e pressione Digitar:

Definir-ExecutionPolicy ByPass -Escopo Usuário atual

E para alterar a política de execução para “ByPass” para todos os usuários, digite o seguinte comando e pressione Digitar:

Definir-ExecutionPolicy ByPass -Escopo Máquina local

Quando terminar, feche o PowerShell e reinicie o dispositivo.

3. Alterar a política de execução por meio do editor de política de grupo local

O Local Group Policy Editor (LGPE) também facilita a alteração da política de execução. Na verdade, esta ferramenta também pode ajudá-lo a definir várias configurações do sistema ou solucionar vários problemas do PC.

Lembre-se, o objetivo principal é alterar a política de execução para que você possa executar seus scripts do PowerShell sem complicações. E, ao fazer isso, você se livrará do erro “scripts em execução desativados” no PowerShell.

Veja como alterar a política de execução na LGPE:

  1. Tipo Editar política de grupo na barra de pesquisa do menu Iniciar e selecione o Melhor partida. Como alternativa, confira as várias formas de abrir o LGPE.
  2. Navegar para Configuração do computador > Modelos administrativos > Componentes do Windows > Windows PowerShell.
  3. Clique duas vezes no Ative a execução de script opção.

Verifica a Habilitado caixa. A partir daí, clique no Política de Execução menu suspenso e selecione Permitir scripts locais e scripts assinados remotamente. Essa opção é semelhante à opção "RemoteSigned" que descobrimos anteriormente.

Se você deseja executar todos os scripts sem restrições, escolha o Permitir todos os scripts opção no menu suspenso "Política de Execução".

A partir daí, clique Aplicar e depois clique OK para salvar essas alterações.

4. Alterar a política de execução usando o Editor do Registro

Se os outros métodos não ajudarem, tente alterar a política de execução usando o Editor do Registro. No entanto, você precisa ter cuidado ao editar as chaves do Registro. Se você ajustar as teclas erradas, poderá acabar danificando seu PC.

Agora, veja como alterar a política de execução por meio do Editor do Registro:

  1. Imprensa Vitória + R para abrir a caixa de diálogo Executar comando.
  2. Tipo Regedit e pressione Digitar para abrir o Editor do Registro.
  3. Copie e cole o seguinte comando na barra de endereço e pressione Digitar:
HKEY_LOCAL_MACHINE\PROGRAMAS\Microsoft\PowerShell\1\ShellIDs\Microsoft.PowerShell

Localize o ExecutionPolicy valor do lado direito.

Se o valor estiver ausente, crie-o seguindo estas etapas:

  1. Clique com o botão direito em um espaço em branco no lado direito.
  2. Selecione Novo > Valor DWORD (32 bits).
  3. Nomeie o valor como ExecutionPolicy e pressione Digitar.

Clique duas vezes no ExecutionPolicy valor. Em seguida, digite RemoteAssinado na seção "Dados de valor". Isso permitirá que o PowerShell execute scripts locais e assinados.

Como alternativa, digite Desviar na seção "Dados de valor". Isso permitirá que o PowerShell execute qualquer script sem limitações.

Depois de inserir seu valor preferido na seção "Dados do valor", pressione OK para salvar as alterações. Por fim, feche o Editor do Registro e reinicie o dispositivo.

Execute seus scripts do PowerShell sem quaisquer restrições

Pode ser bastante frustrante quando de repente você não consegue executar determinados comandos no Windows PowerShell. Mas se você encontrar o erro "scripts desabilitados", as soluções que abordamos devem ajudar.

Agora, o PowerShell costuma causar outros problemas? Bem, existem mais soluções que podem ajudá-lo.