A volte Windows ti escluderà da PowerShell, citando un'opzione che disabilita l'esecuzione di script. Ecco come risolverlo.

Stai eseguendo alcuni comandi su PowerShell e improvvisamente viene visualizzato un messaggio di errore che dice "Impossibile caricare PowerShell perché l'esecuzione di script è disabilitata su questo sistema".

Ti stai chiedendo cosa causa questo problema e come puoi risolverlo? Ti guideremo attraverso i semplici metodi che possono aiutarti ad affrontare questo problema una volta per tutte.

Immergiamoci!

1. Esegui PowerShell in modalità amministratore

Attualmente stai utilizzando PowerShell senza i diritti amministrativi appropriati? Se è così, allora forse è qui che sta il problema.

Quindi, esploriamo i passaggi da applicare per eseguire lo strumento in modalità amministratore:

  1. Premere Vinci + X per aprire il menu di accesso rapido.
  2. Seleziona il Windows PowerShell (amministratore) opzione.

E se questo non aiuta, dai un'occhiata i vari modi per aprire Windows PowerShell

instagram viewer
. Ma dovresti concentrarti solo sui metodi che ti mostrano come eseguire lo strumento con privilegi amministrativi.

2. Modificare i criteri di esecuzione in PowerShell

In alcuni casi, la modifica della politica di esecuzione potrebbe essere d'aiuto. Ma prima di esplorare le soluzioni, esaminiamo innanzitutto cos'è la politica di esecuzione e come funziona.

Qual è la politica di esecuzione e come funziona?

Il criterio di esecuzione è una funzionalità di sicurezza che controlla il modo in cui esegui gli script di PowerShell sul tuo dispositivo. Determina semplicemente quali tipi di script possono essere eseguiti e quali dovrebbero essere evitati. La parte migliore è che puoi configurare questa politica a tuo piacimento.

Ecco le opzioni tra cui puoi scegliere quando configuri il criterio di esecuzione:

  • Limitato: questo criterio impedisce l'esecuzione di qualsiasi script di PowerShell.
  • Senza restrizioni: consente di eseguire qualsiasi script ma mostra un messaggio di avviso quando si eseguono script sospetti.
  • RemoteSigned: questo criterio richiede una firma digitale quando si eseguono gli script scaricati online. Tuttavia, non richiede una firma per gli script locali.
  • Circonvallazione: Ciò consente di eseguire qualsiasi script senza alcuna restrizione. A differenza del criterio "Illimitato", il criterio "ByPass" non ti mostrerà alcun messaggio di avviso quando esegui script sospetti. Quindi, applica sempre questa politica solo quando esegui script legittimi.
  • Tutto firmato: questo criterio esegue solo script firmati da un editore attendibile.

Ora, se utilizzi regolarmente PowerShell, potresti voler modificare di volta in volta i criteri di esecuzione. Tuttavia, alcuni criteri di esecuzione potrebbero visualizzare messaggi di errore quando si eseguono gli script di PowerShell.

Ad esempio, l'abilitazione dei criteri "Restricted", "AllSigned" o "RemoteSigned" potrebbe generare messaggi di errore come l'errore "l'esecuzione degli script è disabilitata".

Per risolvere il problema, dovresti semplicemente modificare la policy di esecuzione in "Unrestricted" o "ByPass". Ma non è tutto; dovresti anche decidere come implementare la politica. Ad esempio, vuoi applicare il criterio per tutti gli utenti o solo per la tua attuale sessione di PowerShell?

Esploriamo tutti gli ulteriori Comandi di PowerShell dovrai aggiungere quando cambi la politica di esecuzione:

  • Utente attuale: questo criterio verrà applicato solo a tutte le sessioni di PowerShell della persona che ha attualmente effettuato l'accesso sul dispositivo.
  • LocalMachine: Si applica a tutti gli utenti che hanno un account sul dispositivo. Questo criterio può essere configurato solo da utenti locali che dispongono di privilegi amministrativi.
  • Processi: si applica solo alla sessione corrente di PowerShell. Ciò significa che dovrai eseguire nuovamente la politica se avvii una nuova sessione.
  • MachinePolicy: Questa politica si applica a tutti gli utenti che hanno un account sul tuo dispositivo. Tuttavia, può essere configurato solo dagli amministratori di rete che dispongono delle autorizzazioni appropriate. Ma è spesso possibile per gli amministratori locali configurare questo criterio di esecuzione utilizzando l'Editor Criteri di gruppo locali.
  • UserPolicy: si applica a tutte le sessioni di PowerShell e agli script eseguiti da un determinato utente.

Ora che tutto è chiaro, esploriamo come eseguire i criteri pertinenti per affrontare il problema "Impossibile caricare PowerShell".

Come modificare il criterio di esecuzione in "Illimitato"

Il modo migliore per affrontare il problema in questione è modificare la politica di esecuzione in "senza restrizioni". Ma prima, è necessario verificare come è configurata ogni policy di esecuzione.

Di seguito sono riportati i passaggi per verificare come sono configurati i criteri di esecuzione:

  1. Premere Vinci + X per aprire il menu di accesso rapido.
  2. Selezionare Windows PowerShell (amministratore) dalle opzioni.
  3. Digita il seguente comando e premi accedere:
Get-ExecutionPolicy -Elenco

Questo dovrebbe mostrare come sono configurate le politiche di esecuzione per diversi utenti e sistemi.

Per modificare il criterio di esecuzione in "Illimitato" per l'utente attivo corrente, digitare il seguente comando e premere accedere:

Impostato-ExecutionPolicy senza restrizioni -Scopo Utente attuale

Per modificare il criterio di esecuzione in "Illimitato" per tutti gli utenti, digitare il seguente comando e premere accedere:

Impostato-ExecutionPolicy senza restrizioni -Scopo LocalMachine

Al termine dell'esecuzione del comando, chiudi PowerShell e riavvia il PC per salvare queste modifiche.

Come modificare la politica di esecuzione in "ByPass"

La politica di esecuzione "ByPass" ti consentirà di eseguire qualsiasi script PowerShell senza problemi. Ma ricorda che potrebbe anche permetterti di eseguire file difettosi. Pertanto, configurare sempre questo criterio di esecuzione solo quando si eseguono file PowerShell affidabili.

Per modificare la politica di esecuzione in "ByPass" per l'utente attivo corrente, digitare il seguente comando e premere accedere:

Impostato-ExecutionPolicy ByPass -Scopo Utente attuale

E per modificare la politica di esecuzione in "ByPass" per tutti gli utenti, digitare il seguente comando e premere accedere:

Impostato-ExecutionPolicy ByPass -Scopo LocalMachine

Al termine, chiudi PowerShell e riavvia il dispositivo.

3. Modificare i criteri di esecuzione tramite l'Editor criteri di gruppo locali

L'Editor Criteri di gruppo locali (LGPE) semplifica inoltre la modifica dei criteri di esecuzione. In effetti, questo strumento può anche aiutarti a configurare varie impostazioni di sistema o risolvere tonnellate di problemi del PC.

Ricorda, l'obiettivo principale è modificare la politica di esecuzione in modo tale da poter eseguire gli script di PowerShell senza problemi. E così facendo, ti libererai dell'errore "l'esecuzione degli script è disabilitata" su PowerShell.

Ecco come modificare la politica di esecuzione nell'LGPE:

  1. Tipo Modifica criteri di gruppo nella barra di ricerca del menu Start e selezionare il Miglior partita. In alternativa, controlla le varie modalità di apertura della LGPE.
  2. Navigare verso Configurazione computer > Modelli amministrativi > Componenti di Windows > Windows PowerShell.
  3. Fare doppio clic sul Attiva l'esecuzione dello script opzione.

Controlla il Abilitato scatola. Da lì, fai clic su Politica di esecuzione menu a discesa e selezionare Consenti script locali e script con firma remota. Questa opzione è simile all'opzione "RemoteSigned" che abbiamo scoperto in precedenza.

Se vuoi eseguire tutti gli script senza restrizioni, scegli il file Consenti tutti gli script opzione dal menu a discesa "Politica di esecuzione".

Da lì, clicca Fare domanda a e quindi fare clic OK per salvare queste modifiche.

4. Modificare il criterio di esecuzione utilizzando l'editor del registro

Se gli altri metodi non hanno aiutato, prova a modificare la politica di esecuzione utilizzando l'Editor del Registro di sistema. Tuttavia, devi fare attenzione quando modifichi le chiavi di registro. Se modifichi le chiavi sbagliate, potresti finire per danneggiare il tuo PC.

Ora, ecco come modificare la politica di esecuzione tramite l'editor del registro:

  1. Premere Vinci + R per aprire la finestra di dialogo Esegui comando.
  2. Tipo Regedit e premere accedere per aprire l'Editor del Registro di sistema.
  3. Copia e incolla il seguente comando nella barra degli indirizzi e premi accedere:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellID\Microsoft.PowerShell

Individua il ExecutionPolicy valore sul lato destro.

Se manca il valore, crealo attraverso questi passaggi:

  1. Fare clic con il tasto destro su uno spazio vuoto sul lato destro.
  2. Selezionare Nuovo > Valore DWORD (32 bit)..
  3. Denominare il valore come ExecutionPolicy e premere accedere.

Fare doppio clic sul ExecutionPolicy valore. Quindi, digita RemoteSigned nella sezione "Dati valore". Ciò consentirà a PowerShell di eseguire script locali e firmati.

In alternativa, digitare Circonvallazione nella sezione "Dati valore". Ciò consentirà a PowerShell di eseguire qualsiasi script senza limitazioni.

Dopo aver inserito il valore preferito nella sezione "Dati valore", premere OK per salvare le modifiche. Infine, chiudi l'Editor del Registro di sistema e riavvia il dispositivo.

Esegui i tuoi script PowerShell senza alcuna restrizione

Può essere piuttosto frustrante quando improvvisamente non puoi eseguire determinati comandi su Windows PowerShell. Ma se ti imbatti nell'errore "script disabilitati", le soluzioni che abbiamo trattato dovrebbero aiutarti.

Ora, PowerShell ti dà spesso altri problemi? Bene, ci sono più soluzioni che possono aiutarti.