安裝、更新和卸載 AWS CLI 第 2 版 在Linux上 - AWS Command Line Interface

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

安裝、更新和卸載 AWS CLI 第 2 版 在Linux上

本節說明如何在 Linux 上安裝、升級和移除 AWS CLI 第 2 版。對其他 Python 套件沒有 AWS CLI 第 2 版 相依性。它在安裝程式中包含一個獨立的嵌入式 Python 複本。

重要

AWS CLI 第 1 版及第 2 版會使用相同的 aws 命令名稱。如果您已安裝兩個版本,您的電腦會使用搜尋路徑中找到的第一個版本。如果您先前已安裝 AWS CLI 第 1 版,我們建議您執行下列其中一項操作來使用 AWS CLI 第 2 版:

  • 建議 – 解除安裝 AWS CLI 第 1 版 並僅使用 AWS CLI 第 2 版。如需解除安裝指示,請判斷您用於安裝 AWS CLI 第 1 版 的方法,並遵循 安裝、更新和解除安裝AWS CLI 第 1 版 中適用於您作業系統的正確解除安裝指示

  • 使用作業系統的能力,為兩個 aws 命令之一建立具有不同名稱的符號連結 (symlink) 或別名。例如,您可以在 Linux 和 macOS 上使用符號連結別名,或在 Windows 上使用 DOSKEY

如需中斷版本 1 和版本 2 之間變更的詳細資訊,請參閱中斷變更 – 從 AWS CLI 第 1 版 移轉至第 2 版

Linux 的先決條件

  • 您必須能夠解壓縮或「解壓縮」下載的套件。如果您的作業系統沒有內建 unzip 命令,請使用對等的命令。

  • 的 AWS CLI 第 2 版 使用 glibc, groff,和 less。默認情況下,這些包含在Linux的大多數主要發行版中。

  • 我們支持 AWS CLI 第 2 版 最新發行的64位版本 CentOS、費多拉、烏布圖、 Amazon Linux 1,和 Amazon Linux 2.

  • 我們支援 Linux ARM 的 AWS CLI 第 2 版。

  • 由於 AWS 不維護第三方儲存庫,因此我們無法保證它們包含最新版本的 AWS CLI。

在 Linux 上安裝 AWS CLI 第 2 版

請依照這些步驟,從命令列在 Linux 上安裝 AWS CLI。

我們會根據您使用 64 位元 Linux 或 Linux ARM,在一個易於複製和貼上群組中提供步驟。請參閱後續步驟中每一行的描述。

Linux x86 (64-bit)

對於最新版本的 AWS CLI, 使用以下命令塊:

$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" unzip awscliv2.zip sudo ./aws/install

對於特定版本的 AWS CLI, 將連字符和版本號附加到文件名。對於此示例,版本的文件名 2.0.30awscli-exe-linux-x86_64-2.0.30.zip 生成以下命令:

$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64-2.0.30.zip" -o "awscliv2.zip" unzip awscliv2.zip sudo ./aws/install

有關版本列表,請參閱 AWS CLI 第 2 版 更改日誌GitHub.

Linux ARM

對於最新版本的 AWS CLI, 使用以下命令塊:

$ curl "https://awscli.amazonaws.com/awscli-exe-linux-aarch64.zip" -o "awscliv2.zip" unzip awscliv2.zip sudo ./aws/install

對於特定版本的 AWS CLI, 將連字符和版本號附加到文件名。對於此示例,版本的文件名 2.0.30awscli-exe-linux-aarch64-2.0.30.zip 生成以下命令:

$ curl "https://awscli.amazonaws.com/awscli-exe-linux-aarch64-2.0.30.zip" -o "awscliv2.zip" unzip awscliv2.zip sudo ./aws/install

有關版本列表,請參閱 AWS CLI 第 2 版 更改日誌GitHub.

  1. 使用下列其中一種方式下載安裝檔案:

    • 使用 curl 命令-o 選項會指定下載的套件寫入的檔案名稱。下列範例命令的選項會使下載的檔案以本機時間 awscliv2.zip 寫入目前的目錄。

      Linux x86 (64-bit)

      對於當前版本的 AWS CLI, 使用以下命令:

      $ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"

      對於特定版本的 AWS CLI, 將連字符和版本號附加到文件名。對於此示例,版本的文件名 2.0.30awscli-exe-linux-x86_64-2.0.30.zip 生成以下命令:

      $ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64-2.0.30.zip" -o "awscliv2.zip"

      有關版本列表,請參閱 AWS CLI 第 2 版 更改日誌GitHub.

      Linux ARM

      對於當前版本的 AWS CLI, 使用以下命令:

      $ curl "https://awscli.amazonaws.com/awscli-exe-linux-aarch64.zip" -o "awscliv2.zip"

      對於特定版本的 AWS CLI, 將連字符和版本號附加到文件名。對於此示例,版本的文件名 2.0.30awscli-exe-linux-aarch64-2.0.30.zip 生成以下命令:

      $ curl "https://awscli.amazonaws.com/awscli-exe-linux-aarch64-2.0.30.zip" -o "awscliv2.zip"curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64-2.0.30.zip" -o "awscliv2.zip"

      有關版本列表,請參閱 AWS CLI 第 2 版 更改日誌GitHub.

    • 從URL下載 – 要使用瀏覽器下載安裝程序,請使用以下其中一項 URLs。在提取(解壓縮)包之前,您可以驗證下載的安裝文件的完整性和真實性。如需詳細資訊,請參閱 驗證已下載安裝程式檔案的完整性和真實性

      Linux x86 (64-bit)

      對於最新版本的 AWS CLI: https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip

      對於特定版本的 AWS CLI, 將連字符和版本號附加到文件名。對於此示例,版本的文件名 2.0.30awscli-exe-linux-x86_64-2.0.30.zip 導致以下URL: https://awscli.amazonaws.com/awscli-exe-linux-x86_64-2.0.30.zip

      有關版本列表,請參閱 AWS CLI 第 2 版 更改日誌GitHub.

      Linux ARM

      對於最新版本的 AWS CLI: https://awscli.amazonaws.com/awscli-exe-linux-aarch64.zip

      對於特定版本的 AWS CLI, 將連字符和版本號附加到文件名。對於此示例,版本的文件名 2.0.30awscli-exe-linux-aarch64-2.0.30.zip 導致以下URL https://awscli.amazonaws.com/awscli-exe-linux-aarch64-2.0.30.zip

      有關版本列表,請參閱 AWS CLI 第 2 版 更改日誌GitHub.

  2. 解壓縮安裝程式。如果您的 Linux 發行版沒有內建 unzip 命令,請使用類似命令解壓縮。下列範例命令會解壓縮套件,並在名為 aws 的目前目錄下建立目錄。

    $ unzip awscliv2.zip
  3. 執行安裝程式。安裝命令會使用新解壓縮的 aws 目錄中名為 install 的檔案。默認情況下,所有文件均安裝到 /usr/local/aws-cli,並在創建一個符號鏈接 /usr/local/bin。命令包括 sudo 授予這些目錄的寫入權限。

    $ sudo ./aws/install

    如果指定您已具有寫入權限的資料夾,則可以在不使用 sudo 的情況下進行安裝。使用下列 install 命令指示來指定安裝位置:

    • 請確定您提供給 -i-b 參數的路徑不包含任何包含空格字元或其他空格字元的磁碟區名稱或目錄名稱。如果有空格,則安裝會失敗。

    • --install-dir-i – 此選項指定要將所有檔案複製到的目錄。

      預設值為 /usr/local/aws-cli

    • --bin-dir-b – 此選項會指定安裝目錄中的 aws 主程式以符號方式連結至指定路徑的檔案 aws。您必須具有指定目錄的寫入許可。建立路徑中已存在目錄的符號連結,可讓您不需將安裝目錄新增到使用者的 $PATH 變數。

      預設值為 /usr/local/bin

    $ sudo ./aws/install -i /usr/local/aws-cli -b /usr/local/bin
  4. 確認安裝。

    $ aws --version aws-cli/2.0.47 Python/3.7.4 Linux/4.14.133-113.105.amzn2.x86_64 botocore/2.0.0

在 Linux 上更新 AWS CLI 第 2 版

若要更新您的 AWS CLI 第 2 版 複本,請從 Linux 命令列依照下列步驟執行。

  1. 使用下列其中一種方式下載安裝檔案:

    使用 curl 命令 – 下列範例命令的選項會使下載的檔案以本機名稱 awscliv2.zip 寫入目前的目錄。

    在此範例中,-o 選項會指定系統寫入下載套件的檔案名稱。在此範例中,檔案會寫入 awscliv2.zip 目前的目錄中。

    Linux x86 (64-bit)

    對於最新版本的 AWS CLI, 使用以下命令塊:

    $ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"

    對於特定版本的 AWS CLI, 將連字符和版本號附加到文件名。對於此示例,版本的文件名 2.0.30awscli-exe-linux-x86_64-2.0.30.zip 生成以下命令:

    $ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64-2.0.30.zip" -o "awscliv2.zip"

    有關版本列表,請參閱 AWS CLI 第 2 版 更改日誌GitHub.

    Linux ARM

    對於最新版本的 AWS CLI, 使用以下命令塊:

    $ curl "https://awscli.amazonaws.com/awscli-exe-linux-aarch64.zip" -o "awscliv2.zip"

    對於特定版本的 AWS CLI, 將連字符和版本號附加到文件名。對於此示例,版本的文件名 2.0.30awscli-exe-linux-aarch64-2.0.30.zip 生成以下命令:

    $ curl "https://awscli.amazonaws.com/awscli-exe-linux-aarch64-2.0.30.zip" -o "awscliv2.zip"

    有關版本列表,請參閱 AWS CLI 第 2 版 更改日誌GitHub.

    從URL下載 – 要使用瀏覽器下載安裝程序,請使用以下方法之一 URLs。您可以在下載安裝文件後驗證該文件的完整性和真實性。如需詳細資訊,請在解壓縮套件之前參閱 驗證已下載安裝程式檔案的完整性和真實性

    Linux x86 (64-bit)

    對於最新版本的 AWS CLI: https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip

    對於特定版本的 AWS CLI: 將連字符和版本號附加到文件名。對於此示例,版本的文件名 2.0.30awscli-exe-linux-x86_64-2.0.30.zip 生成如下鏈接 https://awscli.amazonaws.com/awscli-exe-linux-x86_64-2.0.30.zip. 有關版本列表,請參閱 AWS CLI 第 2 版 更改日誌GitHub.

    Linux ARM

    對於最新版本的 AWS CLI: https://awscli.amazonaws.com/awscli-exe-linux-aarch64.zip

    對於特定版本的 AWS CLI: 將連字符和版本號附加到文件名。對於此示例,版本的文件名 2.0.30awscli-exe-linux-aarch64-2.0.30.zip 生成以下鏈接: https://awscli.amazonaws.com/awscli-exe-linux-aarch64-2.0.30.zip。有關版本列表,請參閱 AWS CLI 第 2 版 更改日誌GitHub.

  2. 解壓縮安裝程式。如果您的 Linux 發行版沒有內建 unzip 命令,請使用相同的命令來安裝。下列範例命令會解壓縮套件,並在名為 aws 的目前目錄下建立目錄。

    $ unzip awscliv2.zip
  3. 若要確保更新安裝位於與目前的 AWS CLI 第 2 版 相同位置,請找出現有的符號連結和安裝目錄。

    • 使用 which 命令來查找您的符號連結。這提供您與 --bin-dir 參數一起使用的路徑。

      $ which aws /usr/local/bin/aws
    • 使用 ls 命令來查找符號連結指向的目錄。這提供您與 --install-dir 參數一起使用的路徑。

      $ ls -l /usr/local/bin/aws lrwxrwxrwx 1 ec2-user ec2-user 49 Oct 22 09:49 /usr/local/bin/aws -> /usr/local/aws-cli/v2/current/bin/aws
  4. 使用符號連結和安裝程式資訊來建構具有 --update 參數的 install 命令。

    $ sudo ./aws/install --bin-dir /usr/local/bin --install-dir /usr/local/aws-cli --update
  5. 確認安裝。

    $ aws --version aws-cli/2.0.47 Python/3.7.4 Linux/4.14.133-113.105.amzn2.x86_64 botocore/2.0.0

在 Linux 上解除安裝 AWS CLI 第 2 版

若要解除安裝 AWS CLI 第 2 版,請執行下列命令。

  1. 找到符號連結並安裝路徑。

    • 使用 which 命令尋找符號連結。這會顯示您與 --bin-dir 參數搭配使用的路徑。

      $ which aws /usr/local/bin/aws
    • 使用 ls 命令尋找符號連結指向的目錄。這為您提供了與 --install-dir 參數一起使用的路徑。

      $ ls -l /usr/local/bin/aws lrwxrwxrwx 1 ec2-user ec2-user 49 Oct 22 09:49 /usr/local/bin/aws -> /usr/local/aws-cli/v2/current/bin/aws
  2. 現在,刪除 --bin-dir 目錄中的兩個符號連結。如果您的使用者帳戶具有這些目錄的寫入許可,您不需要使用 sudo

    $ sudo rm /usr/local/bin/aws $ sudo rm /usr/local/bin/aws_completer
  3. 刪除 --install-dir 目錄。如果您的使用者帳戶具有此資料夾的寫入許可,您不需要使用 sudo

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

驗證已下載安裝程式檔案的完整性和真實性

AWS CLI 第 2 版 安裝程式套件 .zip 檔案是使用 PGP 簽章進行密碼編譯方式簽署。您可以依循下列步驟使用 GnuPG 工具來驗證簽章。如果檔案有任何損壞或更改,此驗證會失敗,且您不應該繼續進行安裝。

以下示例假設您下載了安裝程序包並將其在本地另存爲 awscliv2.zip。如果您將其命名爲其他名稱,請在以下步驟中替換該名稱。

使用 PGP 簽章驗證檔案

  1. 使用您的套件管理員下載並安裝 gpg 命令。如需 GnuPG 的詳細資訊,請參閱 GnuPG 網站

  2. 若要建立公開金鑰檔案,請建立文字檔案,然後貼上下列文字。

    -----BEGIN PGP PUBLIC KEY BLOCK----- mQINBF2Cr7UBEADJZHcgusOJl7ENSyumXh85z0TRV0xJorM2B/JL0kHOyigQluUG ZMLhENaG0bYatdrKP+3H91lvK050pXwnO/R7fB/FSTouki4ciIx5OuLlnJZIxSzx PqGl0mkxImLNbGWoi6Lto0LYxqHN2iQtzlwTVmq9733zd3XfcXrZ3+LblHAgEt5G TfNxEKJ8soPLyWmwDH6HWCnjZ/aIQRBTIQ05uVeEoYxSh6wOai7ss/KveoSNBbYz gbdzoqI2Y8cgH2nbfgp3DSasaLZEdCSsIsK1u05CinE7k2qZ7KgKAUIcT/cR/grk C6VwsnDU0OUCideXcQ8WeHutqvgZH1JgKDbznoIzeQHJD238GEu+eKhRHcz8/jeG 94zkcgJOz3KbZGYMiTh277Fvj9zzvZsbMBCedV1BTg3TqgvdX4bdkhf5cH+7NtWO lrFj6UwAsGukBTAOxC0l/dnSmZhJ7Z1KmEWilro/gOrjtOxqRQutlIqG22TaqoPG fYVN+en3Zwbt97kcgZDwqbuykNt64oZWc4XKCa3mprEGC3IbJTBFqglXmZ7l9ywG EEUJYOlb2XrSuPWml39beWdKM8kzr1OjnlOm6+lpTRCBfo0wa9F8YZRhHPAkwKkX XDeOGpWRj4ohOx0d2GWkyV5xyN14p2tQOCdOODmz80yUTgRpPVQUtOEhXQARAQAB tCFBV1MgQ0xJIFRlYW0gPGF3cy1jbGlAYW1hem9uLmNvbT6JAlQEEwEIAD4WIQT7 Xbd/1cEYuAURraimMQrMRnJHXAUCXYKvtQIbAwUJB4TOAAULCQgHAgYVCgkICwIE FgIDAQIeAQIXgAAKCRCmMQrMRnJHXJIXEAChLUIkg80uPUkGjE3jejvQSA1aWuAM yzy6fdpdlRUz6M6nmsUhOExjVIvibEJpzK5mhuSZ4lb0vJ2ZUPgCv4zs2nBd7BGJ MxKiWgBReGvTdqZ0SzyYH4PYCJSE732x/Fw9hfnh1dMTXNcrQXzwOmmFNNegG0Ox au+VnpcR5Kz3smiTrIwZbRudo1ijhCYPQ7t5CMp9kjC6bObvy1hSIg2xNbMAN/Do ikebAl36uA6Y/Uczjj3GxZW4ZWeFirMidKbtqvUz2y0UFszobjiBSqZZHCreC34B hw9bFNpuWC/0SrXgohdsc6vK50pDGdV5kM2qo9tMQ/izsAwTh/d/GzZv8H4lV9eO tEis+EpR497PaxKKh9tJf0N6Q1YLRHof5xePZtOIlS3gfvsH5hXA3HJ9yIxb8T0H QYmVr3aIUes20i6meI3fuV36VFupwfrTKaL7VXnsrK2fq5cRvyJLNzXucg0WAjPF RrAGLzY7nP1xeg1a0aeP+pdsqjqlPJom8OCWc1+6DWbg0jsC74WoesAqgBItODMB rsal1y/q+bPzpsnWjzHV8+1/EtZmSc8ZUGSJOPkfC7hObnfkl18h+1QtKTjZme4d H17gsBJr+opwJw/Zio2LMjQBOqlm3K1A4zFTh7wBC7He6KPQea1p2XAMgtvATtNe YLZATHZKTJyiqA== =vYOk -----END PGP PUBLIC KEY BLOCK-----

    以下公開金鑰詳細資訊僅供參考。

    Key ID: A6310ACC4672 Type: RSA Size: 4096/4096 Created: 2019-09-18 Expires: 2023-09-17 User ID: AWS CLI Team <aws-cli@amazon.com> Key fingerprint: FB5D B77F D5C1 18B8 0511 ADA8 A631 0ACC 4672 475C
  3. 導入 AWS CLI 使用以下命令的公鑰,替換 public-key-file-name 使用您創建的公鑰的文件名。

    $ gpg --import public-key-file-name gpg: /home/username/.gnupg/trustdb.gpg: trustdb created gpg: key A6310ACC4672475C: public key "AWS CLI Team <aws-cli@amazon.com>" imported gpg: Total number processed: 1 gpg: imported: 1
  4. 下載您下載之套件的 AWS CLI 簽章檔案。它與具有相同的路徑和名稱 .zip 文件,但擴展名爲 .sig。在以下示例中,我們將它保存爲名爲的文件 awscliv2.sig.

    Linux x86 (64-bit)

    對於最新版本的 AWS CLI, 使用以下命令塊:

    $ curl -o awscliv2.sig https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip.sig

    對於特定版本的 AWS CLI, 將連字符和版本號附加到文件名。對於此示例,版本的文件名 2.0.30awscli-exe-linux-x86_64-2.0.30.zip.sig 生成以下命令:

    $ curl -o awscliv2.sig https://awscli.amazonaws.com/awscli-exe-linux-x86_64-2.0.30.zip.sig

    有關版本列表,請參閱 AWS CLI 第 2 版 更改日誌GitHub.

    Linux ARM

    對於最新版本的 AWS CLI, 使用以下命令塊:

    $ curl -o awscliv2.sig https://awscli.amazonaws.com/awscli-exe-linux-aarch64.zip.sig

    對於特定版本的 AWS CLI, 將連字符和版本號附加到文件名。對於此示例,版本的文件名 2.0.30awscli-exe-linux-aarch64-2.0.30.zip.sig 生成以下命令:

    $ curl -o awscliv2.sig https://awscli.amazonaws.com/awscli-exe-linux-aarch64-2.0.30.zip.sig

    有關版本列表,請參閱 AWS CLI 第 2 版 更改日誌GitHub.

  5. 驗證簽章,並將下載的 .sig.zip 檔案名稱以參數形式傳遞給 gpg 命令。

    $ gpg --verify awscliv2.sig awscliv2.zip

    輸出格式應類似以下內容。

    gpg: Signature made Mon Nov 4 19:00:01 2019 PST gpg: using RSA key FB5D B77F D5C1 18B8 0511 ADA8 A631 0ACC 4672 475C gpg: Good signature from "AWS CLI Team <aws-cli@amazon.com>" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: FB5D B77F D5C1 18B8 0511 ADA8 A631 0ACC 4672 475C
    重要

    輸出中的警告是預期的,並不表示有問題。這是因為個人 PGP 金鑰 (如果有) 和 AWS CLI PGP 金鑰之間沒有信任鏈。如需詳細資訊,請參閱信任網路