Uneori, Windows vă va exclude din PowerShell, invocând o opțiune care dezactivează rularea scripturilor. Iată cum să o remediați.

Executați unele comenzi pe PowerShell și vedeți brusc un mesaj de eroare care spune „PowerShell nu poate fi încărcat deoarece rularea scripturilor este dezactivată pe acest sistem”.

Vă întrebați ce cauzează această problemă și cum o puteți rezolva? Vă vom ghida prin metodele simple care vă pot ajuta să rezolvați această problemă o dată pentru totdeauna.

Să ne scufundăm!

1. Rulați PowerShell în modul Administrator

În prezent rulați PowerShell fără drepturi administrative adecvate? Dacă da, atunci poate că aici se află problema.

Deci, haideți să explorăm pașii pe care ar trebui să îi aplicați pentru a rula instrumentul în modul administrator:

  1. presa Câștigă + X pentru a deschide meniul Acces rapid.
  2. Selectează Windows PowerShell (administrator) opțiune.

Și dacă asta nu ajută, verifică diferitele moduri de a deschide Windows PowerShell. Dar ar trebui să vă concentrați doar pe metodele care vă arată cum să rulați instrumentul cu privilegii administrative.

instagram viewer

2. Modificați politica de execuție în PowerShell

În unele cazuri, modificarea politicii de execuție ar putea ajuta. Dar înainte de a explora soluțiile, să vă expunem mai întâi care este politica de execuție și cum funcționează.

Ce este politica de execuție și cum funcționează?

Politica de execuție este o caracteristică de securitate care controlează modul în care rulați scripturile PowerShell pe dispozitiv. Pur și simplu determină ce tipuri de scripturi pot fi executate și care ar trebui evitate. Cea mai bună parte este că puteți configura această politică după bunul plac.

Iată opțiunile din care puteți alege atunci când configurați politica de execuție:

  • Restricţionat: Această politică vă interzice să rulați orice script PowerShell.
  • Nerestricționat: Vă permite să rulați orice script, dar vă arată un mesaj de avertizare când rulați scripturi suspecte.
  • Semnat la distanță: Această politică necesită o semnătură digitală atunci când rulați scripturile pe care le-ați descărcat online. Cu toate acestea, nu necesită o semnătură pentru scripturile locale.
  • Ocolire: Acest lucru vă permite să rulați orice script fără restricții. Spre deosebire de politica „Nerestricționat”, politica „ByPass” nu vă va afișa niciun mesaj de avertizare atunci când executați scripturi suspecte. Deci, aplicați întotdeauna această politică numai atunci când rulați scripturi legitime.
  • Toate semnate: această politică rulează numai scripturi care sunt semnate de un editor de încredere.

Acum, dacă utilizați PowerShell în mod regulat, atunci este posibil să doriți să schimbați politica de execuție din când în când. Cu toate acestea, unele politici de execuție pot afișa mesaje de eroare atunci când rulați scripturile PowerShell.

De exemplu, activarea politicilor „Restricționat”, „AllSigned” sau „RemoteSigned” poate duce la mesaje de eroare precum eroarea „Rularea scripturilor este dezactivată”.

Pentru a rezolva problema, va trebui pur și simplu să schimbați politica de execuție la „Nerestricționat” sau „Ocolire”. Dar asta nu este tot; ar trebui, de asemenea, să decideți cum trebuie implementată politica. De exemplu, doriți să aplicați politica pentru toți utilizatorii sau doar pentru sesiunea dvs. curentă PowerShell?

Să explorăm toate elementele suplimentare Comenzi PowerShell va trebui să adăugați când schimbați politica de execuție:

  • Utilizator curent: Această politică va fi aplicată numai tuturor sesiunilor PowerShell ale persoanei care s-a conectat în prezent pe dispozitiv.
  • LocalMachine: Se aplică tuturor utilizatorilor care au un cont pe dispozitiv. Această politică poate fi configurată numai de utilizatori locali care au privilegii administrative.
  • Proces: se aplică numai pentru sesiunea curentă PowerShell. Aceasta înseamnă că va trebui să executați din nou politica dacă începeți o nouă sesiune.
  • MachinePolicy: Această politică se aplică tuturor utilizatorilor care au un cont pe dispozitivul dvs. Cu toate acestea, poate fi configurat numai de administratorii de rețea care au permisiunile corespunzătoare. Dar este adesea posibil ca administratorii locali să configureze această politică de execuție folosind Editorul de politici de grup local.
  • Politica utilizatorului: Se aplică tuturor sesiunilor PowerShell și scripturilor executate de un anumit utilizator.

Acum că totul este clar, haideți să explorăm cum puteți executa politicile relevante pentru a rezolva problema „PowerShell nu se poate încărca”.

Cum se schimbă politica de execuție la „Nerestricționat”

Cel mai bun mod de a aborda problema în cauză este schimbarea politicii de execuție la „nerestricționat”. Dar înainte de asta, trebuie să verificați cum este configurată fiecare politică de execuție.

Iată pașii pentru verificarea modului în care sunt configurate politicile de execuție:

  1. presa Câștigă + X pentru a deschide meniul de acces rapid.
  2. Selectați Windows PowerShell (administrator) din optiuni.
  3. Tastați următoarea comandă și apăsați introduce:
Get-ExecutionPolicy -Listă

Aceasta ar trebui să vă arate cum sunt configurate politicile de execuție pentru diferiți utilizatori și sisteme.

Pentru a putea schimba politica de execuție la „Nerestricționat” pentru utilizatorul activ curent, tastați următoarea comandă și apăsați introduce:

A stabilit-ExecutionPolicy Unrestricted -Domeniul de aplicare Utilizator curent

Pentru a schimba politica de execuție la „Nerestricționat” pentru toți utilizatorii, tastați următoarea comandă și apăsați introduce:

A stabilit-ExecutionPolicy Unrestricted -Domeniul de aplicare LocalMachine

Când terminați de rulat comanda, închideți PowerShell și reporniți computerul pentru a salva aceste modificări.

Cum se schimbă politica de execuție la „ByPass”

Politica de execuție „ByPass” vă va permite să rulați orice script PowerShell fără probleme. Dar rețineți că vă poate permite și să rulați fișiere cu erori. Deci, configurați întotdeauna această politică de execuție numai atunci când rulați fișiere PowerShell de încredere.

Pentru a schimba politica de execuție la „ByPass” pentru utilizatorul activ curent, tastați următoarea comandă și apăsați introduce:

A stabilit-ExecutionPolicy ByPass -Domeniul de aplicare Utilizator curent

Și pentru a schimba politica de execuție la „ByPass” pentru toți utilizatorii, tastați următoarea comandă și apăsați introduce:

A stabilit-ExecutionPolicy ByPass -Domeniul de aplicare LocalMachine

Când terminați, închideți PowerShell și apoi reporniți dispozitivul.

3. Modificați politica de execuție prin Editorul de politici de grup local

Editorul de politici de grup local (LGPE) vă ajută, de asemenea, să schimbați politica de execuție. De fapt, acest instrument vă poate ajuta, de asemenea, să configurați diferite setări de sistem sau să depanați o mulțime de probleme ale PC-ului.

Amintiți-vă, scopul principal este de a schimba politica de execuție, astfel încât să puteți rula script-urile PowerShell fără probleme. Și, făcând acest lucru, veți scăpa de eroarea „Rularea scripturilor este dezactivată” de pe PowerShell.

Iată cum puteți schimba politica de execuție în LGPE:

  1. Tip Editați politica de grup în bara de căutare a meniului Start și selectați Cea mai buna potrivire. Alternativ, verificați diferitele modalități de deschidere a LGPE.
  2. Navigheaza catre Configurare computer > Șabloane administrative > Componente Windows > Windows PowerShell.
  3. Faceți dublu clic pe Activați Script Execution opțiune.

Verifică Activat cutie. De acolo, faceți clic pe Politica de execuție meniul derulant și selectați Permiteți scripturi locale și scripturi semnate de la distanță. Această opțiune este similară cu opțiunea „RemoteSigned” pe care am descoperit-o mai devreme.

Dacă doriți să rulați toate scripturile fără restricții, alegeți Permite toate scripturile opțiunea din meniul derulant „Politica de execuție”.

De acolo, faceți clic aplica și apoi faceți clic Bine pentru a salva aceste modificări.

4. Modificați politica de execuție utilizând Editorul de registry

Dacă celelalte metode nu au ajutat, atunci încercați să schimbați politica de execuție folosind Editorul de registru. Cu toate acestea, trebuie să fiți atenți când editați cheile de registry. Dacă modificați tastele greșite, atunci s-ar putea să vă deteriorați computerul.

Acum, iată cum puteți schimba politica de execuție prin Editorul de registru:

  1. presa Câștigă + R pentru a deschide caseta de dialog Run command.
  2. Tip Regedit și apăsați introduce pentru a deschide Editorul Registrului.
  3. Copiați și lipiți următoarea comandă în bara de adrese și apăsați introduce:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\ShellId-uri\Microsoft.PowerShell

Localizați ExecutionPolicy valoare din partea dreaptă.

Dacă valoarea lipsește, creați-o prin acești pași:

  1. Faceți clic dreapta pe un spațiu liber din partea dreaptă.
  2. Selectați Nou > Valoare DWORD (32 de biți)..
  3. Denumiți valoarea ca ExecutionPolicy și apăsați introduce.

Faceți dublu clic pe ExecutionPolicy valoare. Apoi, tastați Semnat la distanță în secțiunea „Date valori”. Acest lucru va permite PowerShell să execute scripturi locale și semnate.

Alternativ, tastați Ocolire în secțiunea „Date valori”. Acest lucru va permite PowerShell să execute orice script fără limitări.

După ce ați introdus valoarea preferată în secțiunea „Date valori”, apăsați Bine pentru a salva modificările. În cele din urmă, închideți Editorul de registry și apoi reporniți dispozitivul.

Rulați scripturile dvs. PowerShell fără restricții

Poate fi destul de frustrant atunci când brusc nu puteți executa anumite comenzi pe Windows PowerShell. Dar dacă întâlniți eroarea „scripturile sunt dezactivate”, soluțiile pe care le-am acoperit ar trebui să vă ajute.

Acum, PowerShell vă oferă adesea alte probleme? Ei bine, există mai multe soluții care te pot ajuta.