Więcej
PowerShell mówi "wykonywanie skryptów jest wyłączone w tym systemie."
Próbuję uruchomić plik [tag:cmd], który wywołuje skrypt [tag:powershell] z cmd.exe
, i dostaję poniższy błąd:
Management_Install.ps1
nie może zostać załadowany, ponieważ wykonywanie skryptów jest wyłączone w tym systemie.
I have run
Set-ExecutionPolicy -ExecutionPolicy Unrestricted
i kiedy uruchamiam Get-ExecutionPolicy
z [tag:powershell], dostaję Unrestricted
z powrotem.
PS C:\Users\Administrator\> Get-ExecutionPolicy
Unrestricted
C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portal\Install\Scripts\> powershell .\Management_Install.ps1 1
WARNING: Running x86 PowerShell...
Plik
C:\Projects.Practices.ESB\Source\Przykłady portalu zarządzania\Install\Scripty\Management_Install.ps1
nie może zostać załadowany, ponieważ wykonywanie skryptów jest wyłączone w tym systemie. Proszę zobaczyć "get-help about_signing
", aby uzyskać więcej szczegółów.
W linii:1 znak:25
.management_Install.ps1
<<<<< 1
- CategoryInfo : NotSpecified: (:) [], PSSecurityException
- FullyQualifiedErrorId : RuntimeException
C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portal\Install\Scripts\> PAUSE
Press any key to continue . . .
System to Windows Server 2008R2.
Co robię źle?
1532
3
Jeśli używasz Windows Server 2008 R2 to istnieje wersja x64 i x86 PowerShell, z których obie muszą mieć ustawione polityki wykonania. Czy ustawiłeś politykę wykonania na obu hostach?
Jako Administrator, możesz ustawić politykę wykonania wpisując to w oknie PowerShell:
Aby uzyskać więcej informacji, zobacz Using the Set-ExecutionPolicy Cmdlet.
Możesz ominąć tę politykę poprzez dodanie
-ExecutionPolicy ByPass
podczas uruchamiania PowerShellRemoteSigned: wszystkie skrypty, które sam stworzyłeś będą uruchamiane, a wszystkie skrypty pobrane z Internetu będą musiały być podpisane przez zaufanego wydawcę.
OK, zmień politykę wpisując po prostu: