无法安装Exchange Online PowerShell V2模块报错求助
故障原因
- 核心原因为PowerShell默认使用的TLS协议版本过低,PowerShell Gallery官方已弃用TLS 1.0、TLS 1.1连接,仅支持TLS 1.2及以上版本,因此会触发包源解析失败的报错
- 次要原因为本地预装的
PowerShellGet、PackageManagement基础模块版本过旧,无法兼容当前PSGallery的源规则 - 少数情况为本地网络代理、防火墙/杀毒软件拦截了对PSGallery源的访问请求
解决方案
按以下顺序排查解决即可:
步骤1:强制会话使用TLS 1.2协议
在PowerShell终端(需以管理员身份运行)执行如下命令,修改当前会话的TLS协议规则:
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12
执行完成后先验证包是否可检索:
Find-Module -Name ExchangeOnlineManagement -RequiredVersion 2.0.5
如果正常返回模块信息,直接执行安装命令即可,加-Force参数跳过未信任源的确认提示:
Install-Module -Name ExchangeOnlineManagement -RequiredVersion 2.0.5 -Force
步骤2:升级基础组件(步骤1失败时执行)
如果步骤1仍然报错,先升级本地的基础模块:
Install-Module -Name PowerShellGet -Force -AllowClobber
升级完成后完全关闭PowerShell终端,重新以管理员身份打开,再重复执行步骤1的操作即可。
步骤3:网络排查(前两步都失败时执行)
- 如当前网络使用代理,执行如下命令导入系统代理配置到PowerShell会话:
netsh winhttp import proxy source=ie - 确认本地防火墙、杀毒软件未拦截
powershellgallery.com域名的访问,可直接在浏览器打开对应源地址验证连通性 - 仍然无法连接时可手动安装:下载对应版本的模块nupkg包,解压后放到
C:\Program Files\WindowsPowerShell\Modules\ExchangeOnlineManagement目录下,重启终端即可直接导入使用
内容的提问来源于stack exchange,提问作者NVBK3
相关产品推荐
相关产品推荐

