PowerShell是否有导致错误的限制没有足够的配额可用于处理此命令?

问题描述 投票:1回答:1

我们有一个失败的部署脚本,并显示错误消息:没有足够的配额可用于处理此命令。

在它失败的时候,它尝试在已经启动相同的可执行文件10次之后异步启动可执行文件。所以11号失败了。总共需要启动17个。此脚本不是在PowerShell中编写的,但我们使用远程PowerShell会话来启动它,只有在我们通过PowerShell远程处理运行脚本时才会出现此错误。

如果我们直接在服务器上运行相同的脚本而不使用PowerShell远程处理,我们不会收到此错误,并且脚本在启动exe的所有实例(总共17个)并且没有错误地完成时没有问题。

我已经检查了我怀疑可能导致错误的典型WSMAN限制,据我所知,它们被设置为无限制。起初我以为MaxProcessesPerShell可能设置得太低了。以下是运行此命令的服务器上的WSMAN驱动器的结果:

我们目前有这些WSMAN设置:

> WSMan:\localhost\Shell> dir

   WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Shell

Type            Name                           SourceOfValue   Value
----            ----                           -------------   -----
System.String   AllowRemoteShellAccess                         true
System.String   IdleTimeout                                    7200000
System.String   MaxConcurrentUsers                             2147483647
System.String   MaxShellRunTime                                2147483647
System.String   MaxProcessesPerShell                           2147483647
System.String   MaxMemoryPerShellMB                            2147483647
System.String   MaxShellsPerUser                               2147483647

是否有任何其他PowerShell或WSMAN设置可能导致此错误?

建议用于Not enough quota ...错误的典型解决方案涉及使页面文件更大。我还没有尝试过,因为脚本在PowerShell会话之外运行时没有错误。

如果需要帮助回答这个问题,我可以提供更多关于脚本正在做什么的细节。

powershell windows-server-2012-r2 wsman
1个回答
0
投票

导致我的错误的配额限制是PowerShell 32位插件上的MaxProcessesPerShell设置。此设置与Shell设置无关。为了解决这个问题,我在远程PowerShell会话中运行了以下命令...

 dir WSMan:\localhost\Plugin\microsoft.powershell32\Quotas\MaxProcessesPerShell

结果...

Type            Name                           SourceOfValue   Value
----            ----                           -------------   -----
System.String   MaxProcessesPerShell                           15

用...更改设置为25

Set-Item WSMan:\localhost\Plugin\microsoft.powershell32\Quotas\MaxProcessesPerShell 25

用...重新启动WinRM服务

Restart-Service WinRM

尝试使用此新配额再次运行问题脚本,它现在启动exe的所有17个实例,没有任何错误。还有一个64位PowerShell插件,它也有自己的设置。

这个解决方案在这里找到Not enough quota is available to process this command

© www.soinside.com 2019 - 2024. All rights reserved.