Рейтинг:0

Не удается установить модуль SqlServer PowerShell 21.1.18256: PackageManagement\Install-Package: доступ запрещен

флаг us

У меня есть серверы, которые не имеют доступа к Интернету, поэтому у меня есть внутренний 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 установлен.
Рейтинг:0
флаг in

Я бы попробовал это:

Install-Module -Name SqlServer -Scope CurrentUser

источник: https://docs.microsoft.com/en-us/powershell/module/powershellget/install-module?view=powershell-7.1

Если это работает с вашим текущим логином, поговорите с кем-нибудь о получении разрешения на обновление папки модуля локального компьютера.

user2871239 avatar
флаг us
Хорошее предложение. К сожалению, это дало мне точно такую ​​​​же ошибку. Я также попробовал эту версию команды с PowerShell **не**, запущенным от имени администратора, с тем же результатом.
флаг in
Вы проверили наличие прав на запись в папки в $env:PSModulePath? Я бы лично попробовал установить модуль в другое место, чтобы убедиться, что он работает, а затем беспокоиться об установке в папку по умолчанию. https://docs.microsoft.com/en-us/powershell/scripting/developer/module/installing-a-powershell-module?view=powershell-7.1
user2871239 avatar
флаг us
У меня нет, но я локальный администратор и работаю от имени администратора, так что ** не должно ** быть проблемой. Другие люди используют сервер, и я не хочу, чтобы каждый человек устанавливал свою собственную копию. Кроме того, я могу установить другие модули, используя этот формат команды. И я смог установить более раннюю версию.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.