У меня есть серверы, которые не имеют доступа к Интернету, поэтому у меня есть внутренний PSRepository. Я скачал текущий модуль SqlServer (21.1.18256) и опубликовал его в своем внутреннем репозитории. Я установил его на пять серверов. На шестом получаю:
> Install-module -name SqlServer -Repository JLP -AllowClobber
PackageManagement\Install-Package: Доступ запрещен
В 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
часть
+ FullyQualifiedErrorId: System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.GetChildItemCommand,Mic
rosoft.PowerShell.PackageManagement.Cmdlets.InstallPackage
Я никогда не видел этого раньше и понятия не имею, с чего начать.
Я запускаю PowerShell (5.1) от имени администратора. Версии:
> $PSVersionTable
Имя Значение
---- -----
PS Версия 5.1.14393.4583
Рабочий стол PSEdition
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
Версия сборки 10.0.14393.4583
CLRVерсия 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
СериализацияВерсия 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 не удалось установить.
21.0.17262 не удалось установить.
21.0.17240 установлен.