使用 yum 安装 Azure CLI

对于附带 yum 的 Linux 分发版(例如 RHEL、Fedora 或 CentOS),可以安装适用于 Azure CLI 的包。 此包已在 RHEL 7、Fedora 19 和更高版本以及 CentOS 7 中测试。

CLI 的当前版本为 2.0.69。 有关最新版本的信息,请参阅发行说明。 若要查找你已安装的版本并查看是否需要更新,请运行 az --version

Important

Azure CLI 的 RPM 包依赖于 python 包。 在你的系统上,这可能是早于所要求的 Python 2.7.x 的 Python 版本。 如果这对你有影响,请找到一个替代 python 包,或按照手动安装说明执行操作。

请注意,Python 2 将于 2020 年 1 月 1 日停用并且不会再收到更新。 出于此原因,请升级到 Python 3(如果可能)。 Azure CLI 与 Python 3.6 及更高版本兼容。

安装

  1. 导入 Microsoft 存储库密钥。

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  2. 创建本地 azure-cli 存储库信息。

    sudo sh -c 'echo -e "[azure-cli]
    name=Azure CLI
    baseurl=https://packages.microsoft.com/yumrepos/azure-cli
    enabled=1
    gpgcheck=1
    gpgkey=https://packages.microsoft.com/keys/microsoft.asc" > /etc/yum.repos.d/azure-cli.repo'
    
  3. 使用 yum install 命令安装。

    sudo yum install azure-cli
    

然后即可使用 az 命令来运行 Azure CLI。 若要登录,请使用 az login 命令。

az login

若要详细了解不同的身份验证方法,请参阅使用 Azure CLI 登录

故障排除

下面是使用 yum 安装时出现的一些常见问题。 如果遇到的问题未在本文中列出,请在 github 上提出问题

代理阻止连接

如果由于代理而无法连接到外部资源,请确保已在 shell 中正确设置了 HTTP_PROXYHTTPS_PROXY 变量。 你需要与系统管理员联系以了解要对这些代理使用哪些主机和端口。

许多 Linux 程序(包括那些在安装过程中使用的程序)也会采用这些值。 若要设置这些值,请执行以下操作:

# No auth
export HTTP_PROXY=http://[proxy]:[port]
export HTTPS_PROXY=https://[proxy]:[port]

# Basic auth
export HTTP_PROXY=http://[username]:[password]@[proxy]:[port]
export HTTPS_PROXY=https://[username]:[password]@[proxy]:[port]

Important

如果你位于代理后面,则必须设置这些 shell 变量以通过 CLI 连接到 Azure 服务。 如果不使用基本身份验证,建议将这些变量导出到 .bashrc 文件中。 请始终遵循企业的安全策略和系统管理员的要求。

你可能还想要显式配置 yum 以便在所有情况下都使用此代理。 请确保以下行显示在 /etc/yum.conf[main] 部分下:

[main]
# ...
proxy=http://[proxy]:[port] # If your proxy requires https, change http->https
proxy_username=[username] # Only required for basic auth
proxy_password=[password] # Only required for basic auth

为了获取 Microsoft 签名密钥并从我们的存储库中获取包,代理必须允许与以下地址之间的 HTTPS 连接:

  • https://packages.microsoft.com

CLI 未能在适用于 Linux 的 Windows 子系统上安装或运行

由于适用于 Linux 的 Windows 子系统 (WSL) 是基于 Windows 平台的一个系统调用转换层,因此,在尝试安装或运行 Azure CLI 时可能会发生错误。 CLI 依赖于在 WSL 中可能具有 bug 的某些功能。 如果无论你以何方式安装 CLI 都会发生错误,则很可能是因为 WSL 有问题而不是 CLI 安装过程有问题。

若要对 WSL 安装进行故障排除并尽可能解决问题,请执行以下操作:

  • 如果可以,在 Linux 计算机或 VM 上运行相同的安装过程来看看它是否会成功。 如果成功,则几乎可以肯定问题与 WSL 有关。 若要启动 Azure 中的 Linux VM,请参阅在 Azure 门户中创建 Linux VM 文档。
  • 确保运行的是最新版本的 WSL。 若要获取最新版本,请更新 Windows 10 安装
  • 检查 WSL 是否存在可能会解决你的问题的待解决问题。 那里通常会提供有关如何解决该问题的建议,或者提供有关将修复该问题的发行版的信息。
  • 如果没有与你的问题对应的现有问题,请提交一个新的 WSL 问题并确保提供尽可能多的信息。

如果在 WSL 上安装或运行时继续出现问题,请考虑安装适用于 Windows 的 CLI

更新

使用 yum update 命令更新 Azure CLI。

sudo yum update azure-cli

卸载

如果你决定卸载 Azure CLI,我们会很遗憾。 在卸载之前,请使用 az feedback 命令告诉我们在哪些方面需要改进或修复。 我们的目标是消除 Azure CLI 中的 bug 并使其变得用户友好。 如果你在发现 bug 后提出 GitHub 问题,我们将十分感激。

  1. 从系统中删除包。

    sudo yum remove azure-cli
    
  2. 如果不打算重新安装 CLI,请删除存储库信息。

    sudo rm /etc/yum.repos.d/azure-cli.repo
    
  3. 如果不使用任何其他 Microsoft 包,请删除签名密钥。

    MSFT_KEY=`rpm -qa gpg-pubkey /* --qf "%{version}-%{release} %{summary}\n" | grep Microsoft | awk '{print $1}'`
    sudo rpm -e --allmatches gpg-pubkey-$MSFT_KEY
    

后续步骤

现在你已经安装了 Azure CLI,下面简要介绍其功能和常用命令。