你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

脱机安装Azure PowerShell

在某些环境中,无法连接到 Internet 或PowerShell Gallery。 在这些情况下,可以使用以下方法之一脱机安装 Az PowerShell 模块。

注释

本文中脱机安装的选项至少需要一个具有 Internet 访问权限的系统才能下载 Az PowerShell 模块,这与你计划安装模块的系统不同。

先决条件

  • 安装受支持的 PowerShell 版本 7 或更高版本
  • 如果运行的是Windows作系统,也支持Windows PowerShell 5.1。

跨平台

Az PowerShell 模块的以下安装选项在所有平台上都提供跨平台,包括 Windows、Linux 和 macOS。

从 tar 存档安装

小窍门

命令行实用工具需要使用此安装选项。 默认情况下,它在 Windows 10 版本 1803 或更高版本、大多数 Linux 分发版和 macOS 的当前版本上可用。

  1. 在有权访问 Internet 的系统上,定义要在其中保存 tar 存档的目标路径。

    $downloadFolderPath = "$home/Downloads"
    
  2. 验证下载文件夹是否存在。 否则,请创建文件夹。

    if (-not (Test-Path -Path $downloadFolderPath -PathType Container)) {
        New-Item -Path $downloadFolderPath -ItemType Directory
    }
    
  3. 确定GitHub上最新 Az PowerShell 模块版本的 tar 存档的 URL。

    $tarSourceUrl = (
        Invoke-RestMethod -Uri https://api.github.com/repos/azure/azure-powershell/releases/latest |
        Select-Object -ExpandProperty assets | Where-Object content_type -eq 'application/x-gzip'
    ).browser_download_url
    
  4. 将 tar 文件名和目标文件路径存储在变量中。

    $fileName = Split-Path -Path $tarSourceUrl -Leaf
    $downloadFilePath = Join-Path -Path $downloadFolderPath -ChildPath $fileName
    
  5. 使用 PowerShell 从GitHub下载 tar 存档。

    Invoke-WebRequest -Uri $tarSourceUrl -OutFile $downloadFilePath
    
  6. 如果运行的是Windows作系统,请取消阻止下载的文件。

    if ($PSVersionTable.PSVersion.Major -le 5 -or $IsWindows -eq $true) {
        Unblock-File -Path $downloadFilePath
    }
    

    注释

    将 tar 存档复制到脱机系统。 定义和变量或指定实际值,而不是在脱机系统上的以下命令中使用变量。

  7. 提取 tar 存档的内容。

    tar zxf $downloadFilePath -C $downloadFolderPath
    
  8. 运行从提取的文件之一的脱机系统中要安装 Az PowerShell 模块的脚本。

    .$downloadFolderPath/InstallModule.ps1
    

保存并复制安装

使用可以访问 Internet 和 PowerShell Gallery 的系统,通过 Save-ModuleSave-PSResource 将 Az PowerShell 模块下载到网络位置。 这些命令将 Az 模块及其依赖项保存到指定位置。 使用保存的模块作为安装源,并将其复制到脱机系统。

从专用存储库安装

在本地网络上创建专用存储库,并将其用作脱机系统的安装源。 若要了解详细信息,请参阅 使用专用 PowerShellGet 存储库。

此方法允许在单个服务器或文件共享上缓存 PowerShell 模块,以便使用 PowerShellGet 或 Microsoft.PowerShell.PSResourceGet 部署到任何断开连接的系统。

Windows

在Windows,如果使用 Windows PowerShell 版本 5.1,还可以选择使用 MSI 安装 Az PowerShell 模块。

重要

请记住,MSI 安装程序仅适用于 Windows PowerShell 5.1。

故障排除

有关 Az PowerShell 模块常见安装问题的解决方案,请参阅 对 Az PowerShell 模块的安装问题进行故障排除。

另请参阅

  • Save-Module
  • Save-PSResource

后续步骤

若要详细了解如何使用 Az PowerShell 模块管理Azure资源,请参阅 Get Started with Azure PowerShell