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

Azure PowerShell 的脱机安装

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

注意

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

先决条件

跨平台

Az PowerShell 模块的以下安装选项适用于所有平台,包括 Windows、Linux 和 macOS。

从 tar 存档安装

提示

使用此安装选项需要 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 存档复制到脱机系统。 定义 $downloadFilePath$downloadFolderPath 变量或指定实际值,而不是在脱机系统上使用以下命令中的变量。

  7. 提取 tar 存档的内容。

    tar zxf $downloadFilePath -C $downloadFolderPath
    
  8. 运行 InstallModule.ps1 脚本,该脚本是脱机系统上提取的文件之一,你需要在此脱机系统中安装 Az PowerShell 模块。

    .$downloadFolderPath/InstallModule.ps1
    

保存和复制安装项

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

从专用存储库安装

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

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

Windows

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

重要

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

故障排除

关于 Az PowerShell 模块常见安装问题的解决方案,请参阅 Az PowerShell 模块安装问题排查

另请参阅

后续步骤

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