AWS Command Line Interface
ユーザーガイド

Linux に AWS CLI をインストールする

AWS Command Line Interface (AWS CLI) とその依存関係は、Python 用のパッケージマネージャーである pip を使用して、ほとんどの Linux ディストリビューションでインストールできます。

重要

awscli パッケージは aptyum など他のパッケージマネージャー用にリポジトリで利用可能ですが、pip から入手するか、バンドルインストーラを使用しない限り、最新バージョンであることは保証されません。

pip がすでに存在する場合は、メインのインストールに関するトピックの手順に従います。pip --version を実行して、Linux のバージョンにすでに Python と pip が含まれているかどうか確認します。Python version 3+ がインストールされている場合は、pip3 コマンドの使用が推奨されます。

$ pip3 --version

pip がない場合は、インストールされている Python のバージョンを確認します。

$ python --version

または

$ python3 --version

まだ Python 2 バージョン 2.6.5+ または Python 3 バージョン 3.3+ を持っていない場合は、まず、Python をインストールする必要があります。Python がすでにインストールされている場合は、pip および AWS CLI のインストールに進みます。

pip のインストール

pip がインストールされていない場合は、Python Packaging Authority が提供するスクリプトを使用してインストールできます。

pip をインストールするには

  1. curl コマンドを使用してインストールスクリプトをダウンロードします。

    $ curl -O https://bootstrap.pypa.io/get-pip.py
  2. Python でスクリプトを実行して、pip の最新バージョンとその他の必要なサポートパッケージをダウンロードしてインストールします。

    $ python get-pip.py --user

    または

    $ python3 get-pip.py --user

    --user スイッチを含めると、スクリプトは pip をパス ~/.local/bin にインストールします。

  3. pip を含むフォルダが PATH 変数の一部であることを確認します。

    1. ユーザーフォルダーでシェルのプロファイルスクリプトを見つけます。現在使用しているシェルが不明な場合は、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. これで、pip が正しくインストールされたことを確認するためにテストすることができます。

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

pip を使用して AWS CLI をインストールします。

pip を使用して AWS CLI をインストールします。

$ pip3 install awscli --upgrade --user

--user スイッチを使用すると、pip は AWS CLI を ~/.local/bin にインストールします。

AWS CLI が正しくインストールされたことを確認します。

$ aws --version aws-cli/1.16.116 Python/3.6.8 Linux/4.14.77-81.59-amzn2.x86_64 botocore/1.12.106

エラーが表示される場合は、「AWS CLI エラーのトラブルシューティング」を参照してください。

AWS CLI の最新バージョンへのアップグレード

AWS CLI の新しいバージョンがあるかどうか定期的に確認し、可能な場合はアップグレードすることをお勧めします。

「古い」パッケージを確認するには、pip list -o コマンドを使用します。

$ aws --version aws-cli/1.16.170 Python/3.7.3 Linux/4.14.123-111.109.amzn2.x86_64 botocore/1.12.160 $ pip3 list -o Package Version Latest Type ---------- -------- -------- ----- awscli 1.16.170 1.16.198 wheel botocore 1.12.160 1.12.188 wheel

前のコマンドにより、使用可能な AWS CLI の新しいバージョンがあることが表示されたため、pip install --upgrade を実行して最新バージョンを入手できます。

$ pip3 install --upgrade --user awscli Collecting awscli Downloading https://files.pythonhosted.org/packages/dc/70/b32e9534c32fe9331801449e1f7eacba6a1992c2e4af9c82ac9116661d3b/awscli-1.16.198-py2.py3-none-any.whl (1.7MB) |████████████████████████████████| 1.7MB 1.6MB/s Collecting botocore==1.12.188 (from awscli) Using cached https://files.pythonhosted.org/packages/10/cb/8dcfb3e035a419f228df7d3a0eea5d52b528bde7ca162f62f3096a930472/botocore-1.12.188-py2.py3-none-any.whl Requirement already satisfied, skipping upgrade: docutils>=0.10 in ./venv/lib/python3.7/site-packages (from awscli) (0.14) Requirement already satisfied, skipping upgrade: rsa<=3.5.0,>=3.1.2 in ./venv/lib/python3.7/site-packages (from awscli) (3.4.2) Requirement already satisfied, skipping upgrade: colorama<=0.3.9,>=0.2.5 in ./venv/lib/python3.7/site-packages (from awscli) (0.3.9) Requirement already satisfied, skipping upgrade: PyYAML<=5.1,>=3.10; python_version != "2.6" in ./venv/lib/python3.7/site-packages (from awscli) (3.13) Requirement already satisfied, skipping upgrade: s3transfer<0.3.0,>=0.2.0 in ./venv/lib/python3.7/site-packages (from awscli) (0.2.0) Requirement already satisfied, skipping upgrade: jmespath<1.0.0,>=0.7.1 in ./venv/lib/python3.7/site-packages (from botocore==1.12.188->awscli) (0.9.4) Requirement already satisfied, skipping upgrade: urllib3<1.26,>=1.20; python_version >= "3.4" in ./venv/lib/python3.7/site-packages (from botocore==1.12.188->awscli) (1.24.3) Requirement already satisfied, skipping upgrade: python-dateutil<3.0.0,>=2.1; python_version >= "2.7" in ./venv/lib/python3.7/site-packages (from botocore==1.12.188->awscli) (2.8.0) Requirement already satisfied, skipping upgrade: pyasn1>=0.1.3 in ./venv/lib/python3.7/site-packages (from rsa<=3.5.0,>=3.1.2->awscli) (0.4.5) Requirement already satisfied, skipping upgrade: six>=1.5 in ./venv/lib/python3.7/site-packages (from python-dateutil<3.0.0,>=2.1; python_version >= "2.7"->botocore==1.12.188->awscli) (1.12.0) Installing collected packages: botocore, awscli Found existing installation: botocore 1.12.160 Uninstalling botocore-1.12.160: Successfully uninstalled botocore-1.12.160 Found existing installation: awscli 1.16.170 Uninstalling awscli-1.16.170: Successfully uninstalled awscli-1.16.170 Successfully installed awscli-1.16.198 botocore-1.12.188

AWS CLI 実行ファイルをコマンドラインパスに追加する

pip を使用してインストールした後は、オペレーティングシステムの aws 環境変数への PATH 実行ファイルの追加が必要になる場合があります。

pip によって AWS CLI をインストールしたフォルダを確認するには、次のコマンドを実行します。

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

/home/username は Linux では ~ に対応するため、これを ~/.local/bin/ として参照できます。

--user スイッチを省いて、ユーザーモードでインストールしなかった場合、実行可能ファイルは Python のインストール先の bin フォルダにあります。Python がインストールされた場所が不明な場合は、次のコマンドを実行します。

$ which python /usr/local/bin/python

出力は、実際の実行可能ファイルではなく symlink へのパスになる場合があります。ls -al を実行して、その参照先を確認します。

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

pip のインストール のステップ 3 でパスに追加したのと同じフォルダである場合、作業は完了です。それ以外の場合は、ステップ 3a – 3c を再び実行して、この追加フォルダをパスに追加します。