PowerShell错误“在此系统上禁用了脚本的执行。”
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PowerShell错误“在此系统上禁用了脚本的执行。”相关的知识,希望对你有一定的参考价值。
我有一个power shell脚本,用于停止服务,'停止/终止进程',删除2个文件,然后重新启动。
我可以在我的Windows 10 64位主机上完美地运行这个脚本 - 出现ZERO问题。我尝试在我的虚拟机中运行它,我收到错误
无法加载,因为在此系统上禁用了运行脚本。有关详细信息,请参阅https:/go.microsoft.com/fwlink/上的about_Execution_Policies?LinkID = 135170
所以只是为了咯咯笑,我去看了我的组策略,他们没有配置在任何一台机器上。
管理模板> Windows组件>未配置Windows PowerShell。
那么为什么虚拟机上的问题而不是我的主机呢?
编辑Ran Get-ExecutionPolicy以及VM受限制的Get-ExecutionPolicy-List
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser Undefined
LocalMachine Undefined
把它放在我的主人身上
Scope ExecutionPolicy
----- ---------------
MachinePolicy Undefined
UserPolicy Undefined
Process Undefined
CurrentUser Undefined
LocalMachine Unrestricted
我不知道我的本地机器是如何改变的 - 软件安装?
我将在这里出去,只是重新拍摄一部分About Execution Policies。
Windows客户端操作系统的默认执行策略是“受限制”。这意味着脚本不会自动运行。如果您的VM具有Windows客户端操作系统且您从未更改过执行策略,那么您的问题就是预期的。如果一台Windows 10计算机没有问题,则有人更改了执行策略。
在有问题的VM上,您需要确定运行脚本的范围(或帐户)。然后,您需要相应地设置执行策略。
如果您在自己登录服务器时测试运行脚本,那么您只需打开PowerShell控制台并运行以下命令:
Set-ExecutionPolicy RemoteSigned
然后在同一个控制台中运行该脚本。
以下命令将列出该计算机上所有作用域的执行策略:
Get-ExecutionPolicy -List
您应该比较上面的工作系统和非工作系统上的命令。您的问题可能是运行脚本的特定范围的执行策略设置。如果您阅读了我的帖子中的链接,它应该可以帮助您确定需要更改的内容。
以下将允许所有本地脚本在VM上执行,无论它们是否已签名:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine
以上是关于PowerShell错误“在此系统上禁用了脚本的执行。”的主要内容,如果未能解决你的问题,请参考以下文章
powershell PowerShell:读取SQL错误日志
powershell PowerShell:来自InnerException的错误消息