Erro: “cannot be loaded because running scripts is disabled on this system. Error”
Visão Geral do Erro
O erro “cannot be loaded because running scripts is disabled on this system. Error” ocorre quando o PowerShell tenta executar um script, mas a execução de scripts está desabilitada nas configurações de segurança do sistema. Essa restrição é uma característica de segurança do PowerShell, que visa impedir a execução não autorizada de scripts potencialmente maliciosos.
Causas Comuns
Existem várias razões pelas quais você pode encontrar esse erro:
1. Política de Execução Restritiva: O PowerShell possui várias políticas de execução que controlam se scripts podem ser executados no sistema. A configuração padrão em muitas instalações é “Restricted”, que não permite a execução de scripts.
2. Permissões de Usuário: Se você não tiver permissões administrativas, pode não conseguir alterar a política de execução.
3. Ambiente de Execução: Diferentes versões do PowerShell podem ter políticas de execução diferentes, e é importante garantir que você está configurando a política correta para a versão em uso.
Métodos de Solução
Método 1: Alterar a Política de Execução
- Abra o PowerShell como Administrador.
-
Execute o seguinte comando para verificar a política de execução atual:
powershell
Get-ExecutionPolicy
Isso deve retornar “Restricted”. -
Para permitir a execução de scripts locais assinados, digite:
powershell
Set-ExecutionPolicy RemoteSigned
Isso permite que scripts criados localmente sejam executados, enquanto scripts baixados da internet precisam ser assinados por um editor confiável. -
Se você precisar de permissões mais amplas, como permitir todos os scripts, execute:
powershell
Set-ExecutionPolicy Unrestricted
Nota: Esta opção pode representar um risco de segurança, então use com cautela.
Método 2: Bypass Temporário para Execução de Scripts
Se você deseja executar um script específico sem mudar a política de execução global, você pode usar a opção Bypass:
1. No terminal, digite o seguinte comando:
powershell
powershell -ExecutionPolicy Bypass -File script.ps1
Substitua script.ps1 pelo nome do seu script. Isso permite que o script seja executado independentemente da política de execução configurada.
Método 3: Definir a Política de Execução para o Usuário Atual
Se você não tem permissões de administrador, pode definir a política de execução apenas para o seu usuário:
1. Abra o PowerShell normalmente (não como administrador).
2. Execute o comando:
powershell
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
Isso alterará a política de execução apenas para a sua conta de usuário, permitindo que você execute scripts locais.
Método 4: Verifique a Arquitetura do PowerShell
Se você estiver usando um sistema Windows Server, é importante verificar se ambas as versões do PowerShell (x64 e x86) têm as políticas de execução configuradas corretamente:
1. Abra um terminal CMD e use:
cmd
echo %PROCESSOR_ARCHITECTURE%
Isso mostrará se você está usando a versão de 32 ou 64 bits.
- Em seguida, execute o comando correspondente no PowerShell:
powershell
Set-ExecutionPolicy RemoteSigned -Scope LocalMachine
Execute isso em ambas as versões, se aplicável.
Método 5: Configurações no Visual Studio Code
Se você está usando o Visual Studio Code e recebe o erro ao tentar executar scripts no terminal integrado, você pode ajustar as configurações:
1. Abra o arquivo de configurações do VS Code (settings.json).
2. Adicione as seguintes linhas:
json
"terminal.integrated.profiles.windows": {
"PowerShell": {
"source": "PowerShell",
"icon": "terminal-powershell",
"args": ["-ExecutionPolicy", "Bypass"]
}
},
"terminal.integrated.defaultProfile.windows": "PowerShell"
3. Reinicie o Visual Studio Code para aplicar as alterações.
Dicas de Prevenção
- Mantenha a segurança: Sempre que possível, use a política
RemoteSignedem vez deUnrestrictedpara minimizar riscos. - Use scripts confiáveis: Sempre verifique a origem de scripts antes de executá-los.
- Documente alterações: Mantenha um registro das alterações feitas nas políticas de execução para referência futura.
Resumo
O erro “cannot be loaded because running scripts is disabled on this system. Error” é um problema comum quando se trabalha com scripts no PowerShell. Ao seguir os métodos descritos acima, você pode ajustar suas configurações de execução e evitar esse erro. Sempre tenha em mente a segurança ao alterar políticas de execução e utilize scripts de fontes confiáveis.

コメント