- Napaka pri izvajanju skriptov v PowerShellu v sistemu Windows 11 je posledica privzetih varnostnih omejitev.
- Obstaja več načinov za spreminjanje pravilnika izvajanja in omogočanje skriptov glede na potrebe uporabnikov.
- Pravilna varnostna konfiguracija omogoča nadzorovano izvajanje skriptov in s tem zmanjšuje tveganja za sistem.
Ste se pred kratkim srečali z nadležnim sporočilom "Datoteke ni mogoče naložiti, ker je izvajanje skriptov v tem sistemu onemogočeno." pri poskusu zagona skripta v PowerShellu v sistemu Windows 11Niste sami. To je ena tistih situacij, ki spravlja ob pamet tako začetnike kot izkušene razvijalce. Ta vrsta napake Običajno se pojavi, ko želimo avtomatizirati naloge ali preizkusiti majhne skripte. In nenadoma nas sistem ustavi na mestu zaradi težave, ki se zdi skrita za plastmi varnosti in neznanimi pravilniki.
V tem članku pojasnjujem Vse, kar morate vedeti o napaki pri izvajanju skripta PowerShell v sistemu Windows 11... z uporabo prijaznega in praktičnega pristopa, da ga boste lahko razumeli, tudi če nimate veliko tehničnih izkušenj. Poglobili se bomo v vzroke, varnostne politike, korake za odpravljanje težav in najbolj priporočene alternative, pri čemer bomo upoštevali vašo varnost in potrebe. Pojasnil bom tudi vsa pogosto zastavljena vprašanja in nekatere tehnične nianse, ki jih v drugih vadnicah pogosto spregledamo.
Zakaj dobim napako pri izvajanju skripta v PowerShellu?
Klasično sporočilo o napaki se lahko nekoliko razlikuje, ampak skoraj vedno piše nekaj takega: No se puede cargar el archivo <ruta_del_script> porque la ejecución de scripts está deshabilitada en este sistema. To opozorilo ne pomeni, da imate virus ali da je vaš sistem Windows poškodovan.; vzrok je v tem, kako so konfigurirane varnostne politike PowerShell-a.
Microsoft je v vsaki novi različici sistema Windows zaostril varnostne pravilnike, zlasti od sistema Windows 10 in sistema Windows 11 naprej. Privzeto Izvajanje skriptov v PowerShellu je omejeno preprečiti nenadzorovano izvajanje zlonamerne kodeTo je za večino uporabnikov pozitivna stvar, za razvijalce in skrbnike pa je lahko moteča omejitev.
Nekatera najpogostejša sporočila o napakah so:
- Datoteke C:\my_script.ps1 ni mogoče naložiti. Izvajanje skriptov je v tem sistemu onemogočeno. Za več informacij glejte »Get-Help about_signing«.
- Datoteke ni mogoče naložiti, ker je izvajanje skriptov v tem sistemu onemogočeno. Za več informacij glejte about_Execution_Policies.
- Datoteka C:\my_script.ps1 ni digitalno podpisana. Skript se v sistemu ne bo zagnal.
Osnovni razlog je pravilnik izvajanja, konfiguriran v PowerShelluTi pravilniki določajo, ali je dovoljeno izvajati datoteke skriptov in pod kakšnimi pogoji. Privzeto je omogočen najbolj omejujoč pravilnik: Omejeno, kar preprečuje kakršno koli samodejno izvajanje skriptov.
Kaj so pravilniki izvajanja PowerShella in zakaj so pomembni?

Windows PowerShell uporablja sistem pravilnikov izvajanja, da določi, kateri skripti se lahko izvajajo in pod kakšnimi pogoji.. To je bistveno za varnost sistema., saj preprečuje zagon potencialno škodljive kode, prenesene z interneta ali prejete po e-pošti.
Glavne politike, ki jih lahko najdete, so:
- Omejeno: To je privzeti pravilnik v sistemu Windows 11. Ne dovoljuje izvajanja nobenega skripta, samo interaktivni ukazi.
- AllSigned: Dovoli izvajanje samo skriptov in konfiguracijskih datotek, ki jih je digitalno podpisal zaupanja vreden založnik.
- RemoteSignedLokalni skripti delujejo brez težav, vendar morajo biti skripti, preneseni z interneta, digitalno podpisani s strani zaupanja vrednega založnika.
- Neomejeno: Omogoča zagon katerega koli skripta, čeprav prikaže opozorilo, če skript prihaja iz interneta.
Izbira prave politike je bistvenega pomenaČe želite zagnati samo lokalni skript, bo morda zadostoval RemoteSigned. Če ste razvijalec in ste prepričani v svojo kodo, bo morda zadostoval prehod na Unrestricted, vendar vedno previdno.
Kako prepoznati trenutno politiko izvajanja v sistemu Windows 11?
Preden karkoli spremenite, je dobro vedeti, katero politiko imate aktivno.. Preveriti:
- Odprite PowerShellTo lahko storite v meniju Start tako, da poiščete »PowerShell«. Če želite narediti spremembe, naredi to kot skrbnik.
- Vnesite naslednji ukaz:
Get-ExecutionPolicy -List
Prikazal se bo seznam pravilnikov, ki se uporabljajo na različnih področjih (uporabnik, lokalni sistem, proces itd.). Običajno boste kot aktivni pravilnik videli »Omejeno«. V večini primerov.
Rešitve: Kako omogočiti izvajanje skriptov korak za korakom

Napako je mogoče odpraviti na več načinov in vsak od njih Odvisno je od ravni varnosti, ki jo želite ohraniti. in kontekst, v katerem delate. Tukaj so glavne možnosti:
Začasno spremeni pravilnik izvajanja (trenutna seja)
Če morate skript zagnati samo enkrat in ne želite, da bi bila sprememba trajna, lahko to storite takole:
- Odprite PowerShell kot skrbnik.
- Zaženi:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Unrestricted
To vpliva samo na odprto okno PowerShell.Ko ga zaprete, se bo pravilnik vrnil v prejšnje stanje.
Nastavite pravilnik izvajanja za celotnega uporabnika ali sistem
Če želite, da sprememba ostane v veljavi za nedoločen čas, uporabite enega od teh ukazov:
- Za trenutnega uporabnika:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned - Sistemsko (zahteva skrbniška dovoljenja):
Set-ExecutionPolicy -Scope LocalMachine -ExecutionPolicy RemoteSigned
Parameter -Izvršilna politika lahko ga spremenite v Neomejeno, AllSigned o RemoteSigned odvisno od tega, kaj potrebujete. RemoteSigned je pogosto najbolj uravnotežena možnost za uporabnike in razvijalce.
Spremenite pravilnik izvajanja v nastavitvah sistema Windows 11
Druga, manj tehnična alternativa je dostop do sistemskih možnosti:
- Odprite nastavitve sistema Windows 11 (lahko tapnete Zmagaj + jaz).
- Pojdi na Zasebnost in varnost > Za razvijalce.
- Poiščite razdelek PowerShell.
- Omogoča možnost izvajanja nepodpisanih lokalnih skriptov in zahteva podpis samo za oddaljene skripte..
Ta metoda je idealna za tiste, ki se ne želijo dotikati ukazov in imajo raje preprosto, grafično možnost.
Pogoste napake in varnostna priporočila
Omogočanje izvajanja skriptov je lahko tvegano, če izvajanje ni dobro nadzorovano.Bistveno je upoštevati ta priporočila:
- Ne prenašajte ali zaganjajte skriptov iz neznanih virov.Tudi z manj restriktivnimi politikami ostanite previdni.
- Uporaba RemoteSigned ko bo mogoče.
- Po zagonu potrebnega skripta, ponovno vzpostavi prejšnjo politiko (na primer z uporabo
Set-ExecutionPolicy Restricted). - V poslovnih okoljih ali pri delu s kritičnimi skripti, Izberite AllSigned ali se posvetujte s skrbnikom sistema..
Posebni primeri: PowerShell, Azure in nezdružljive različice
Obstajajo scenariji, v katerih je napaka lahko posledica nečesa drugega kot pravilnika izvajanja. Na primer pri določenih modulih, kot je Azure Active Directory, Nekatere sodobne različice PowerShella niso podprte, in to lahko sproži dodatne napake:
- Klasični modul Azure Active Directory deluje samo z PowerShell 3 do 5.1Za višje različice poiščite alternativne ali posodobljene različice modula.
- Vedno ne pozabite zagnati modulov, ki zahtevajo administracijo, kot je Skrbnik da se izognemo nezadostnim dovoljenjem.
Če pozabite na svojo različico PowerShella, preprosto zaženite:
$PSVersionTable
da si ogledate vse informacije o tem.
Dodatni viri za odpravljanje težav in koristni viri

Včasih lahko tudi pri uporabi zgornjih ukazov pride do zrušitevV takem primeru:
- Preverite, če obstajajo Protivirusni program ali pravilnik podjetja preprečuje spremembe.
- Če se napaka pojavi samo pri prenesenih skriptih, Preverite lastnosti datoteke in jo odklenite (Desni klik > Lastnosti > Odkleni).
- Preverite uradna Microsoftova pomoč in specializirane forume, če gre za korporativno okolje z lastnimi omejevalnimi politikami.
Ne pozabite, da se lahko v primeru dodatne pomoči vedno obrnete na Skupnost uporabnikov PowerShella ali Microsoftovi kanali za podporo, saj se običajno posodabljajo s spremembami, ki se uvajajo iz različice v različico.
Razumevanje, zakaj Windows 11 omejuje izvajanje skriptov v PowerShellu, je prvi korak k učinkovitemu in varnemu delu s skripti. Z upoštevanjem teh priporočil boste odpravili napako in se naučili, kako bolje upravljati svoje izvajalno okolje, kar najbolje izkoristiti avtomatizacije in zaščititi svoj sistem. Nastavitve spreminjajte le, kadar je to potrebno, in ne pozabite ponastaviti varnostnih pravilnikov po zaključku opravil.
Sem tehnološki navdušenec, ki je svoja "geek" zanimanja spremenil v poklic. Več kot 10 let svojega življenja sem porabil za uporabo vrhunske tehnologije in premleval najrazličnejše programe iz čiste radovednosti. Zdaj sem se specializiral za računalniško tehnologijo in video igre. To je zato, ker že več kot 5 let pišem za različna spletna mesta o tehnologiji in video igrah ter ustvarjam članke, ki vam želijo dati informacije, ki jih potrebujete, v jeziku, ki je razumljiv vsem.
Če imate kakršna koli vprašanja, moje znanje sega od vsega v zvezi z operacijskim sistemom Windows kot tudi Androidom za mobilne telefone. In moja zaveza je vam, vedno sem pripravljen porabiti nekaj minut in vam pomagati razrešiti kakršna koli vprašanja, ki jih morda imate v tem internetnem svetu.
