Ponekad će vam Windows zabraniti PowerShell, navodeći opciju koja onemogućuje pokretanje skripti. Evo kako to popraviti.
Izvodite neke naredbe na PowerShell-u i odjednom vidite poruku o pogrešci koja glasi: "PowerShell se ne može učitati jer je pokretanje skripti onemogućeno na ovom sustavu."
Pitate se što uzrokuje ovaj problem i kako ga možete riješiti? Provest ćemo vas kroz jednostavne metode koje vam mogu pomoći da jednom zauvijek riješite ovaj problem.
Zaronimo!
1. Pokrenite PowerShell u administratorskom načinu rada
Pokrećete li trenutno PowerShell bez odgovarajućih administratorskih prava? Ako je tako, onda je možda u tome problem.
Dakle, istražimo korake koje trebate primijeniti za pokretanje alata u administratorskom načinu rada:
- Pritisnite Win + X za otvaranje izbornika za brzi pristup.
- Odaberite Windows PowerShell (Administrator) opcija.
A ako to ne pomogne, provjerite različite načine otvaranja Windows PowerShell. Ali trebali biste se usredotočiti samo na metode koje vam pokazuju kako pokrenuti alat s administrativnim ovlastima.
2. Promijenite politiku izvršavanja u PowerShell-u
U nekim bi slučajevima mogla pomoći promjena pravila izvršavanja. Ali prije nego što istražimo rješenja, prvo ćemo vas provesti kroz to što je politika izvršenja i kako funkcionira.
Što je politika izvršenja i kako funkcionira?
Politika izvršavanja je sigurnosna značajka koja kontrolira način na koji pokrećete PowerShell skripte na svom uređaju. Jednostavno određuje koje se vrste skripti mogu pokretati, a koje treba izbjegavati. Najbolji dio je što ovu politiku možete konfigurirati prema svojim željama.
Ovdje su opcije koje možete odabrati prilikom konfiguriranja pravila izvršavanja:
- Ograničen: Ovo vam pravilo zabranjuje pokretanje bilo koje PowerShell skripte.
- Neograničen: Omogućuje pokretanje bilo koje skripte, ali prikazuje poruku upozorenja kada pokrenete sumnjive skripte.
- RemoteSigned: Ova pravila zahtijevaju digitalni potpis kada pokrećete skripte koje ste preuzeli s interneta. Međutim, ne zahtijeva potpis za lokalne skripte.
- Zaobići: Ovo vam omogućuje pokretanje bilo koje skripte bez ikakvih ograničenja. Za razliku od pravila "Neograničeno", pravilo "ByPass" neće vam pokazati nikakve poruke upozorenja kada pokrenete sumnjive skripte. Dakle, uvijek primjenjivajte ovo pravilo samo kada izvodite legitimne skripte.
- Svi Potpisani: Ovo pravilo pokreće samo skripte koje je potpisao pouzdani izdavač.
Sada, ako redovito koristite PowerShell, možda biste s vremena na vrijeme trebali promijeniti politiku izvršavanja. Međutim, neka pravila izvršavanja mogu prikazati poruke o pogrešci kada pokrenete PowerShell skripte.
Na primjer, omogućavanje pravila "Ograničeno", "Svepotpisano" ili "Daljinski potpisano" može dovesti do poruka o pogrešci poput pogreške "pokretanje skripti je onemogućeno".
Da biste riješili problem, jednostavno biste morali promijeniti politiku izvršavanja na "Neograničeno" ili "Zaobilazno". Ali to nije sve; također biste trebali odlučiti kako se politika treba provoditi. Na primjer, želite li primijeniti pravilo za sve korisnike ili samo za vašu trenutnu PowerShell sesiju?
Istražimo sve dodatne PowerShell naredbe morat ćete dodati kada mijenjate politiku izvršenja:
- Trenutni korisnik: Ova će se politika primijeniti samo na sve PowerShell sesije osobe koja je trenutno prijavljena na uređaj.
- LocalMachine: Odnosi se na sve korisnike koji imaju račun na uređaju. Ovo pravilo mogu konfigurirati samo lokalni korisnici koji imaju administrativne ovlasti.
- Postupak: Primjenjuje se samo na trenutnu PowerShell sesiju. To znači da ćete morati ponovno izvršiti pravilo ako započnete novu sesiju.
- MachinePolicy: Ova se politika odnosi na sve korisnike koji imaju račun na vašem uređaju. Međutim, mogu ga konfigurirati samo mrežni administratori koji imaju odgovarajuća dopuštenja. Ali često je moguće da lokalni administratori konfiguriraju ovu politiku izvršavanja pomoću uređivača lokalne grupne politike.
- Korisnička Pravila: Odnosi se na sve PowerShell sesije i skripte koje izvršava određeni korisnik.
Sada kada je sve jasno, istražimo kako možete izvršiti relevantna pravila za rješavanje problema "PowerShell se ne može učitati".
Kako promijeniti politiku izvršenja u "Neograničeno"
Najbolji način za rješavanje problema je promjena politike izvršavanja na "neograničeno". Ali prije toga morate provjeriti kako je svaka politika izvršavanja konfigurirana.
Evo koraka za provjeru kako su konfigurirana pravila izvršavanja:
- Pritisnite Win + X za otvaranje izbornika za brzi pristup.
- Izaberi Windows PowerShell (Administrator) od opcija.
- Upišite sljedeću naredbu i pritisnite Unesi:
Get-ExecutionPolicy -Popis
Ovo bi vam trebalo pokazati kako su pravila izvršavanja konfigurirana za različite korisnike i sustave.
Da biste mogli promijeniti politiku izvršavanja na "Neograničeno" za trenutno aktivnog korisnika, upišite sljedeću naredbu i pritisnite Unesi:
set-ExecutionPolicy Unrestricted -Opseg Trenutni korisnik
Za promjenu pravila izvršavanja na "Neograničeno" za sve korisnike, upišite sljedeću naredbu i pritisnite Unesi:
set-ExecutionPolicy Unrestricted -Opseg LocalMachine
Kada završite s izvođenjem naredbe, zatvorite PowerShell i ponovno pokrenite računalo da biste spremili ove promjene.
Kako promijeniti politiku izvršenja u "ByPass"
Politika izvršavanja "ByPass" omogućit će vam pokretanje bilo koje PowerShell skripte bez muke. No zapamtite da bi vam također mogao omogućiti pokretanje datoteka s greškama. Dakle, uvijek konfigurirajte ovu politiku izvršavanja samo kada pokrećete pouzdane PowerShell datoteke.
Za promjenu pravila izvršavanja na “ByPass” za trenutno aktivnog korisnika, upišite sljedeću naredbu i pritisnite Unesi:
set-ExecutionPolicy Bypass -Opseg Trenutni korisnik
A da biste promijenili politiku izvršavanja na “ByPass” za sve korisnike, upišite sljedeću naredbu i pritisnite Unesi:
set-ExecutionPolicy Bypass -Opseg LocalMachine
Kada završite, zatvorite PowerShell i ponovno pokrenite uređaj.
3. Promijenite politiku izvršavanja putem uređivača pravila lokalne grupe
Uređivač pravila lokalne grupe (LGPE) također vam olakšava promjenu pravila izvršavanja. Zapravo, ovaj vam alat također može pomoći konfigurirati različite postavke sustava ili otkloniti mnoštvo problema s računalom.
Zapamtite, glavni je cilj promijeniti politiku izvršavanja tako da možete pokretati svoje PowerShell skripte bez muke. I tako ćete se riješiti pogreške "pokretanje skripti je onemogućeno" na PowerShellu.
Evo kako promijeniti politiku izvršenja u LGPE-u:
- Tip Uredite pravila grupe u traci za pretraživanje izbornika Start i odaberite Najbolji spoj. Alternativno, provjerite razne načine otvaranja LGPE-a.
- Idite do Konfiguracija računala > Administrativni predlošci > Komponente sustava Windows > Windows PowerShell.
- Dvaput kliknite na Uključite Izvršenje skripte opcija.
Provjeri Omogućeno kutija. Odatle kliknite na Politika izvršenja padajućeg izbornika i odaberite Dopusti lokalne skripte i daljinski potpisane skripte. Ova je opcija slična opciji "RemoteSigned" koju smo ranije otkrili.
Ako želite pokrenuti sve skripte bez ograničenja, odaberite Dopusti sve skripte opciju iz padajućeg izbornika "Pravila izvršenja".
Zatim kliknite primijeniti a zatim kliknite u redu da biste spremili ove promjene.
4. Promijenite politiku izvršavanja pomoću uređivača registra
Ako druge metode nisu pomogle, pokušajte promijeniti politiku izvršavanja pomoću uređivača registra. Međutim, morate biti oprezni kada uređujete ključeve registra. Ako namjestite pogrešne tipke, mogli biste oštetiti svoje računalo.
Sada, evo kako promijeniti politiku izvršavanja putem uređivača registra:
- Pritisnite Win + R da biste otvorili dijaloški okvir naredbe Pokreni.
- Tip Regedit i pritisnite Unesi da otvorite uređivač registra.
- Kopirajte-zalijepite sljedeću naredbu u adresnu traku i pritisnite Unesi:
HKEY_LOCAL_MACHINE\SOFTVER\Microsoft\PowerShell\1\ShellIds\Microsoft.PowerShell
Pronađite Izvršna politika vrijednost na desnoj strani.
Ako vrijednost nedostaje, stvorite je kroz ove korake:
- Kliknite desnom tipkom miša na prazan prostor s desne strane.
- Izaberi Novo > DWORD (32-bitna) vrijednost.
- Imenujte vrijednost kao Izvršna politika i pritisnite Unesi.
Dvaput kliknite na Izvršna politika vrijednost. Dalje, upišite RemoteSigned u odjeljku "Podaci o vrijednosti". Ovo će omogućiti PowerShell-u da izvršava lokalne i potpisane skripte.
Alternativno, upišite Zaobići u odjeljku "Podaci o vrijednosti". Ovo će omogućiti PowerShell-u da izvrši bilo koju skriptu bez ograničenja.
Nakon unosa željene vrijednosti u odjeljak "Podaci o vrijednosti", pritisnite u redu za spremanje promjena. Na kraju zatvorite uređivač registra i ponovno pokrenite uređaj.
Pokrenite svoje PowerShell skripte bez ikakvih ograničenja
Može biti prilično frustrirajuće kada iznenada ne možete izvršiti određene naredbe na Windows PowerShell. Ali ako naiđete na pogrešku "skripte su onemogućene", rješenja koja smo pokrili trebala bi pomoći.
Zadaje li vam PowerShell često druge probleme? Pa, postoji više rješenja koja vam mogu pomoći.