U današnjem digitalnom svijetu, gdje se svakodnevno susrećemo s raznim tehnologijama, često možemo naići na poruke o pogrešci koje nam otežavaju rad. Jedna od takvih poruka je ‘ps1 cannot be loaded because running scripts is disabled on this system’. Ova poruka se obično pojavljuje prilikom pokušaja izvršavanja PowerShell skripti na Windows operativnim sustavima. U ovom članku razmotrit ćemo uzroke ove pogreške, kako je ispraviti i što sve trebate znati o PowerShellu.
PowerShell je moćan alat koji omogućava administratorima sustava i korisnicima da automatiziraju razne zadatke. Pomoću PowerShell skripti možete obavljati razne radnje, od jednostavnog upravljanja datotekama do složenih administrativnih zadataka. No, zbog sigurnosnih razloga, Windows sustavi imaju postavke koje onemogućuju izvršavanje skripti kako bi se spriječila potencijalna oštećenja ili zlonamjerni softver. Kada se pokušate pokrenuti skriptu, a ona nije dopuštena, dobit ćete ovu poruku o pogrešci.
Postavke izvršavanja skripti u PowerShellu definiraju se pomoću ‘Execution Policy’ opcije. Ova opcija može imati različite vrijednosti, kao što su ‘Restricted’, ‘AllSigned’, ‘RemoteSigned’, ‘Unrestricted’, i druge. Kada je politika postavljena na ‘Restricted’, to znači da se ne mogu izvršavati nikakve skripte, a to je zadana postavka na većini sustava. Da biste riješili ovu pogrešku, trebate promijeniti tu postavku.
Da biste to učinili, otvorite PowerShell kao administrator. To možete učiniti tako da desnom tipkom miša kliknete na ikonu PowerShella i odaberete opciju ‘Run as Administrator’. Kada otvorite PowerShell, upišite sljedeću naredbu: Set-ExecutionPolicy RemoteSigned
i pritisnite Enter. Ova opcija omogućava izvršavanje lokalnih skripti, ali zahtijeva da su skripte preuzete s interneta potpisane od strane pouzdane osobe. Nakon što promijenite ovu postavku, pokušajte ponovno pokrenuti svoju skriptu.
Važno je napomenuti da promjena ‘Execution Policy’ može utjecati na sigurnost vašeg sustava. Ako postavite politiku na ‘Unrestricted’, dopuštate svim skriptama da se izvršavaju, što može povećati rizik od napada zlonamjernog softvera. Stoga je preporučljivo koristiti manje permissive postavke poput ‘RemoteSigned’ ili ‘AllSigned’, ako je to moguće.
Također, ako ne želite mijenjati postavke za cijeli sustav, možete promijeniti politiku samo za trenutnu sesiju PowerShella tako da upišete: Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
. Ova naredba će omogućiti izvršavanje skripti samo u trenutnoj instanci PowerShella, a nakon zatvaranja prozora, postavke će se vratiti na izvorne vrijednosti.
Osim promjene politika, također je važno provjeriti je li skripta koju pokušavate pokrenuti ispravna i nije zaražena zlonamjernim kodom. Uvijek preuzimajte skripte iz pouzdanih izvora i pregledavajte ih prije nego ih izvršite. Ako niste sigurni u sigurnost skripte, bolje je ne pokretati je.
U zaključku, poruka ‘ps1 cannot be loaded because running scripts is disabled on this system’ može biti frustrirajuća, ali rješenje je jednostavno. Mijenjanjem ‘Execution Policy’ u PowerShellu možete omogućiti izvršavanje skripti i nastaviti s radom. Imajte na umu sigurnosne aspekte i uvijek budite oprezni prilikom izvođenja skripti. PowerShell je snažan alat, ali dolazi s odgovornošću da ga koristite ispravno i sigurno.