![无法安装 SqlServer PowerShell 模块 21.1.18256:PackageManagement\Install-Package:访问被拒绝](https://linux22.com/image/771153/%E6%97%A0%E6%B3%95%E5%AE%89%E8%A3%85%20SqlServer%20PowerShell%20%E6%A8%A1%E5%9D%97%2021.1.18256%EF%BC%9APackageManagement%5CInstall-Package%EF%BC%9A%E8%AE%BF%E9%97%AE%E8%A2%AB%E6%8B%92%E7%BB%9D.png)
我的服务器无法访问互联网,因此我有一个内部 PSRepository。我已下载当前的 SqlServer 模块 (21.1.18256) 并将其发布到我的内部存储库。我已在五台服务器上安装了它。在第六台服务器上,我得到了:
> Install-module -name SqlServer -Repository JLP -AllowClobber
PackageManagement\Install-Package : Access is denied
At C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.0.0.1\PSModule.psm1:1772 char:21
+ ... $null = PackageManagement\Install-Package @PSBoundParameters
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (Microsoft.Power....InstallPackage:InstallPackage) [Install-Package], Exce
ption
+ FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.GetChildItemCommand,Mic
rosoft.PowerShell.PackageManagement.Cmdlets.InstallPackage
我以前从未见过这种情况并且不知道从哪里开始。
我以管理员身份运行 PowerShell (5.1)。版本如下:
> $PSVersionTable
Name Value
---- -----
PSVersion 5.1.14393.4583
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.14393.4583
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
更新
我的仓库中有旧版本:21.1.18121 和 21.0.17199。我尝试安装并收到“访问被拒绝”消息。然后我尝试使用 21.0.17199
Install-module -name SqlServer -Repository JLP -AllowClobber -RequiredVersion 21.0.17199
并且它成功了。
更新2
我已经下载了其他版本到我的仓库并尝试了它们。
21.0.17279 failed to install.
21.0.17262 failed to install.
21.0.17240 installed.
答案1
我会尝试这个:
Install-Module -Name SqlServer -Scope CurrentUser
来源: https://docs.microsoft.com/en-us/powershell/module/powershellget/install-module?view=powershell-7.1
如果它与您当前的登录兼容,那么请与某人谈谈获取更新本地机器模块文件夹的权限。