在 Linux 上安装 AWS CLI 版本 1 - AWS Command Line Interface

在 Linux 上安装 AWS CLI 版本 1

您可以使用 pip 程序包管理器或捆绑安装程序安装 AWS Command Line Interface (AWS CLI) 版本 1 及其对大多数 Linux 发行版的依赖项。

尽管其他程序包管理器(如 aptyum)的存储库中提供了 awscli 程序包,但它们不是由 AWS 生产、管理和支持的。我们建议您仅从本指南中记载的官方 AWS 发行点安装 AWS CLI。

先决条件

您必须已安装 Python 2 版本 2.7 或更高版本,或 Python 3 版本 3.4 或更高版本。有关安装说明,请参阅 Python 的初学者指南 中的下载 Python 页面。

重要

AWS CLI 版本 1 不再支持 Python 版本 2.6 和 3.3。2020 年 1 月 10 日之后发布的所有 AWS CLI 版本 1 版本(从 1.17 开始)都需要 Python 2.7、Python 3.4 或更高版本。

此更改不会影响 AWS CLI 的以下版本:

  • AWS CLI 版本 1 的 Windows MSI 安装程序版本

  • AWS CLI 版本 2

有关更多信息,请参阅本指南中的通过早期版本的 Python 使用 AWS CLI 版本 1,以及弃用公告博客文章。

在 Linux 上使用捆绑安装程序安装和卸载 AWS CLI 版本 1

在 Linux 或 macOS 上,可以使用捆绑安装程序来安装 AWS CLI 的版本 1。捆绑安装程序包含所有依赖项,并可以离线使用。

注意

捆绑安装程序不支持安装到包含空格的路径。

使用捆绑安装程序(带有 sudo)安装 AWS CLI 版本 1

以下步骤使您能够从任何版本的 Linux 或 macOS 上的命令行安装 AWS CLI 版本 1。

以下是可剪切和粘贴以作为一组命令运行的安装命令的摘要,各个命令的具体解释见下文。

curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip" unzip awscli-bundle.zip sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws

使用捆绑安装程序,在命令行中执行以下步骤来安装 AWS CLI 版本 1。

使用捆绑安装程序安装 AWS CLI 版本 1

  1. 使用以下方法之一下载 AWS CLI 版本 1 捆绑安装程序。

  2. 从程序包中提取文件。如果没有 unzip 来提取文件,请使用 Linux 发行版的内置程序包管理器进行安装。

    $ unzip awscli-bundle.zip
  3. 运行安装程序。安装程序在 /usr/local/aws 中安装 AWS CLI,并在 /usr/local/bin 目录中创建符号链接 aws。使用 -b 选项创建符号链接将免除在用户的 $PATH 变量中指定安装目录的需要。这应该能让所有用户通过在任何目录下输入 aws 来调用 AWS CLI。

    $ sudo ./awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws

    默认情况下,安装脚本在系统默认版本的 Python 下运行。如果已安装 Python 的备选版本并希望使用该版本安装 AWS CLI,请使用该版本按 Python 可执行文件的绝对路径运行安装脚本,如下所示。

    $ sudo /usr/local/bin/python3.7 awscli-bundle/install -i /usr/local/aws -b /usr/local/bin/aws
  4. 验证 AWS CLI 是否已正确安装。

    $ aws --version aws-cli/1.18.83 Python/3.7.4 Linux/4.14.133-113.105.amzn2.x86_64 botocore/1.13

    如果出现错误,请参阅排除 AWS CLI 错误

使用捆绑安装程序(不带 sudo)安装 AWS CLI 版本 1

如果您没有 sudo 权限,或打算仅为当前用户安装 AWS CLI,则可使用先前命令的修改版本。前两个命令是相同的。

$ curl "https://s3.amazonaws.com/aws-cli/awscli-bundle.zip" -o "awscli-bundle.zip" $ unzip awscli-bundle.zip $ ./awscli-bundle/install -b ~/bin/aws

为当前用户安装 AWS CLI 版本 1

  1. 通过以下方式之一下载 AWS CLI 版本 1 捆绑安装程序。

  2. 使用 unzip 从程序包中提取文件。如果没有 unzip,请使用 Linux 发行版的内置程序包管理器进行安装。

    $ unzip awscli-bundle.zip
  3. 运行安装程序。安装程序在 /usr/local/aws 中安装 AWS CLI,并在 /usr/local/bin 目录中创建符号链接 aws。此命令使用 -b 参数以指定安装程序放置 aws 符号链接文件的目录。您必须具有对指定文件夹的写入权限。

    $ ./awscli-bundle/install -b ~/bin/aws

    这会将 AWS CLI 安装到默认位置 (~/.local/lib/aws) 并在 ~/bin/aws 中创建符号链接 (symlink)。确保您的 PATH 环境变量中包含 ~/bin,以使该符号链接生效。

    $ echo $PATH | grep ~/bin // See if $PATH contains ~/bin (output will be empty if it doesn't) $ export PATH=~/bin:$PATH // Add ~/bin to $PATH if necessary
  4. 确保包含 AWS CLI 版本 1 的目录是您的 PATH 变量的一部分。

    1. 在您的用户文件夹中查找 Shell 的配置文件脚本。如果您不能确定所使用的 Shell,请运行 echo $SHELL

      $ ls -a ~ . .. .bash_logout .bash_profile .bashrc Desktop Documents Downloads
      • Bash.bash_profile.profile.bash_login

      • Zsh.zshrc

      • Tcsh.tcshrc.cshrc.login

    2. 在配置文件脚本末尾添加与以下示例类似的导出命令。

      export PATH=~/.local/bin:$PATH

      此命令将路径(在本示例中为 ~/.local/bin)插入到现有 PATH 变量的前面。

    3. 将配置文件重新加载到当前会话中,以使更改生效。

      $ source ~/.bash_profile
  5. 验证 AWS CLI 是否已正确安装。

    $ aws --version aws-cli/1.18.83 Python/3.7.4 Linux/4.14.133-113.105.amzn2.x86_64 botocore/1.13

    如果出现错误,请参阅排除 AWS CLI 错误

卸载 AWS CLI 版本 1 捆绑安装程序

除了可选的符号链接之外,捆绑安装程序不会将任何内容放在安装目录之外,所以卸载十分简单,就是直接删除这两个项目。

$ sudo rm -rf /usr/local/aws $ sudo rm /usr/local/bin/aws

使用 pip 安装和卸载 AWS CLI 版本 1

安装 pip

如果尚未安装 pip,可以使用 Python 打包权威机构 提供的脚本进行安装。运行 pip --version 可查看您的 Linux 版本是否已包含 Python 和 pip。如果您安装了 Python 3 或更高版本,我们建议您使用 pip3 命令。

  1. 使用 curl 命令下载安装脚本。以下命令使用 -O(大写字母“O”)参数指定下载的文件将使用与远程主机上相同的名称存储在当前的目录中。

    $ curl -O https://bootstrap.pypa.io/get-pip.py
  2. 使用 pythonpython3 命令运行脚本以下载并安装最新版本的 pip 和其他必需的支持包。当您包含 --user 开关时,脚本将 pip 安装到路径 ~/.local/bin

    $ python3 get-pip.py --user
  3. 确保包含 pip 的目录是您的 PATH 变量的一部分。

    1. 在您的用户文件夹中查找 Shell 的配置文件脚本。如果您不能确定所使用的 Shell,请运行 echo $SHELL

      $ ls -a ~ . .. .bash_logout .bash_profile .bashrc Desktop Documents Downloads
      • Bash.bash_profile.profile.bash_login

      • Zsh.zshrc

      • Tcsh.tcshrc.cshrc.login

    2. 在配置文件脚本末尾添加与以下示例类似的导出命令。

      export PATH=~/.local/bin:$PATH

      此命令将路径(在本示例中为 ~/.local/bin)插入到现有 PATH 变量的前面。

    3. 将配置文件重新加载到当前会话中,以使更改生效。

      $ source ~/.bash_profile
  4. 要验证 pip3pip 否已正确安装,请运行以下命令。

    $ pip3 --version pip 19.2.3 from ~/.local/lib/python3.7/site-packages (python 3.7)

使用 pip 安装和更新 AWS CLI 版本 1

  1. 使用 pippip3 命令安装或更新 AWS CLI。如果您使用的是 Python 3 或更高版本,我们建议您使用 pip3 命令。使用 --user 开关时,pip 将 AWS CLI 安装到 ~/.local/bin

    $ pip3 install awscli --upgrade --user
  2. 验证 AWS CLI 是否已正确安装。

    $ aws --version aws-cli/1.18.83 Python/3.7.4 Linux/4.14.133-113.105.amzn2.x86_64 botocore/1.13

    如果出现错误,请参阅排除 AWS CLI 错误

将 AWS CLI 版本 1 可执行文件添加到命令行路径

在使用 pip 进行安装后,可能需要将 aws 可执行文件添加到操作系统的 PATH 环境变量中。

您可以运行以下命令验证 pip 已将 AWS CLI 安装到哪个文件夹中。

$ which aws /home/username/.local/bin/aws

您可以将此路径 ~/.local/bin/ 作为参考,因为在 Linux 中 /home/username 对应于 ~

如果您忽略了 --user 开关且未在用户模式下安装,可执行文件可能位于 Python 安装的 bin 文件夹中。如果您不知道 Python 的安装位置,请运行此命令。

$ which python /usr/local/bin/python

输出可能是符号链接的路径,而不是实际的可执行文件。运行 ls -al 以查看所指向的路径。

$ ls -al /usr/local/bin/python /usr/local/bin/python -> ~/.local/Python/3.6/bin/python3.6

pip 将程序安装到 Python 应用程序所在的文件夹中。将此文件夹添加到 PATH 变量。

修改您的 PATH 变量

  1. 在您的用户目录中查找 Shell 的配置文件脚本。如果您不能确定所使用的 Shell,请运行 echo $SHELL

    $ ls -a ~ . .. .bash_logout .bash_profile .bashrc Desktop Documents Downloads
    • Bash.bash_profile.profile.bash_login

    • Zsh.zshrc

    • Tcsh.tcshrc.cshrc.login

  2. 向配置文件脚本中添加导出命令。

    export PATH=~/.local/bin:$PATH

    在本示例中,此命令将路径 ~/.local/bin 添加到当前 PATH 变量中。

  3. 将更新的配置文件加载到当前会话中。

    $ source ~/.bash_profile

使用 pip 卸载 AWS CLI

如果需要卸载 AWS CLI,请使用 pip uninstall

$ pip3 uninstall awscli