Come risolvere i problemi degli script di PowerShell su Windows 11
Se gli script di PowerShell ti stanno ignorando o generano errori, non sei certo il solo. A volte le impostazioni di sicurezza predefinite di Windows 11 bloccano l’esecuzione degli script, rendendo l’automazione un vero problema. Fortunatamente, esistono alcuni modi per allentare queste restrizioni, quanto basta per far funzionare gli script senza trasformare il PC in un vero e proprio zoo. L’obiettivo è regolare i criteri di esecuzione in modo sicuro, assicurandosi di non aprire accidentalmente la porta a script sospetti. Dopo aver seguito questi passaggi, dovresti essere in grado di eseguire gli script di PowerShell senza problemi, sia in locale che tramite la rete.
Come risolvere il problema dello script di PowerShell non in esecuzione in Windows 11
Metodo 1: eseguire PowerShell come amministratore: un gioco da ragazzi
Questo è il primo passo più semplice. I criteri di esecuzione di PowerShell spesso richiedono privilegi di amministratore per essere modificati. Fai clic con il pulsante destro del mouse sul pulsante Start (o premi Win + X) e seleziona Terminale Windows (Amministratore) o Windows PowerShell (Amministratore). Deve essere eseguito con privilegi di amministratore, altrimenti i comandi non verranno eseguiti. Fai un rapido test eseguendo lo script in seguito. A volte, la semplice esecuzione come amministratore risolve il problema perché concede le autorizzazioni necessarie. In alcune configurazioni, questo è sufficiente, altre volte sarà necessario modificare ulteriormente le impostazioni.
Metodo 2: modificare i criteri di esecuzione per consentire gli script
Questa è la soluzione principale.È un po’ strano, ma Windows imposta di default un criterio restrittivo, che impedisce l’esecuzione della maggior parte degli script a meno che non siano firmati o specificamente considerati attendibili. Per allentare le impostazioni, apri di nuovo PowerShell con diritti di amministratore e digita:
Set-ExecutionPolicy RemoteSigned
Premi Enter. Quando richiesto, digita Y
e premi Enterdi nuovo. Questo comando consente di eseguire liberamente script locali, ma controlla comunque le firme se si estrae codice da Internet. Su alcune macchine, questo comando potrebbe “fallire” la prima volta, poi funzionare dopo un riavvio – non si sa perché, ma è un meme nella community di PowerShell. Se non funziona immediatamente, riavvialo e riprova.
Metodo 3: modificare il registro per correzioni di livello profondo
Questo è un po’ più complesso, ma a volte i criteri di sistema sono rigidamente bloccati a livello di registro. Se modificare le impostazioni di PowerShell non è stato sufficiente, potrebbe essere necessario accedere al registro. Premere Windows + R, digitare regedit
e premere Enter. Prima di modificare i file del registro, esegui un backup del registro, perché a Windows piace complicare le cose.
Vai a:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows
Fai clic con il pulsante destro del mouse su Windows, seleziona Nuovo > Chiave e chiamalo PowerShell
. Quindi, nella nuova PowerShell
chiave, fai clic con il pulsante destro del mouse sul pannello di destra, scegli Nuovo > Valore DWORD (32 bit) e chiamalo EnableScripts
. Fai doppio clic e imposta il valore su 1
. Questo in pratica segnala a Windows di consentire gli script con un livello di sicurezza inferiore.
Chiudete l’editor del registro e riavviate il PC. Spesso è sufficiente, ma ricordate: modificare il registro può essere un po’ rischioso se non sapete cosa state facendo, quindi non esagerate. Inoltre, alcuni strumenti di sicurezza potrebbero comunque bloccare gli script, quindi controllateli.
Suggerimenti bonus e problemi comuni
Alcuni suggerimenti aggiuntivi perché Windows può essere imprevedibile:
- Per prima cosa, esegui un backup del registro, nel caso in cui si verifichino errori.
- Assicuratevi che il vostro software di sicurezza non stia bloccando PowerShell: a volte gli antivirus possono rivelarsi una vera seccatura.
- Se i comandi generano errori, ricontrolla la sintassi, soprattutto se copi da guide. Windows ama gli errori di battitura.
E tieni presente: modificare le policy di esecuzione può essere rischioso se esegui script dannosi. Fai sempre attenzione a ciò che esegui. Meglio prevenire che curare, no?
Incartare
Eseguire gli script di PowerShell in Windows 11 non è proprio una passeggiata, ma è fattibile. Innanzitutto, spesso è utile eseguirli come amministratore, per poi allentare i criteri di esecuzione con Set-ExecutionPolicy. Quando questo non basta, entrano in gioco le modifiche al registro, che possono portare le cose al limite. Ricordatevi solo di effettuare backup e di ricontrollare i comandi. Una volta impostati, gli script dovrebbero essere eseguiti senza problemi, aiutandovi ad automatizzare ogni tipo di attività e a risparmiare tempo.
Domande frequenti
Qual è la politica di esecuzione in PowerShell?
È fondamentalmente il modo in cui Windows decide quali script possono essere eseguiti. Consideratelo come un cancello di sicurezza: quelli più bloccati impediscono l’esecuzione degli script, il che è positivo per la sicurezza ma fastidioso se si ha bisogno di automazione.
Posso ripristinare i criteri di esecuzione predefiniti?
Assolutamente. Basta eseguire Set-ExecutionPolicy Restricted
PowerShell come amministratore e il sistema si bloccherà di nuovo. Utile se vuoi annullare ciò che hai fatto o rafforzare nuovamente la sicurezza.
La modifica della policy di esecuzione comprometterà la sicurezza?
Può succedere se non si presta attenzione. Allentare le restrizioni significa che potrebbero essere eseguiti script dannosi se non si presta attenzione. Eseguite sempre e solo script provenienti da fonti affidabili, senza eccezioni.