2016-07-06 7 views
1

私は、エラーメッセージの下に取得aws s3 lsのコマンドを実行した後: -"aws s3 ls"コマンドが "InvalidRequest"エラーメッセージをスローします。どのようにそれを解決するには?

をListBuckets 操作を呼び出すときにクライアントエラー(InvalidRequest)が発生しました:あなたは が署名バージョンを必要とする地域にバケットを操作しようとしています4.この問題を解決するには、 - region引数、 AWS_DEFAULT_REGION環境変数、または AWS CLI設定ファイルの地域変数を使用して、明示的に に正しい地域の場所を指定します。あなたは「--bucket BUCKET-バケットの位置を取得s3api AWS」 実行することにより、バケットの位置を取得することができます。以下は

の質問に答えるために役立つかもしれ詳細と私の調査結果です: -

  • コマンドap-south-1地域で実行されているEC2インスタンスから実行されています。

  • Thisアマゾンドキュメントは、エラーメッセージで示唆したように2014年1月30日後に作成された新しい領域が唯一の署名バージョン4

  • をサポートすると言う私は、コマンドaws --region ap-south-1 s3 lsを与えてみましたが、このコマンドは、同じエラーメッセージを表示します。

  • 私はyum updateを実行したとAWS CLIのバージョンが上記aws s3 lsコマンドは絶対に正常に動作し、それが私たち-東-1インスタンスから実行された場合にバケットを示していますaws-cli/1.10.33 Python/2.7.10 Linux/4.4.11-23.53.amzn1.x86_64 botocore/1.4.23

  • ある最新のものです。

答えて

5

aws cliを最新バージョン(執筆時点ではv1.11.84)に更新する必要があります。

yum updateこのエラーの背後にある理由は、新しい地域でAWS S3は、低署名バージョンをサポートしていません、である。このGuide to install AWS CLI

次試行し機能していない場合

+1

をこの答えに展開するには、パッケージリポジトリでのAWS CLIのバージョンが古くなって、多くの場合で、本当に最高のAWSからダウンロードしてインストールされます。 – jbird

+1

ありがとうございました。これは私が取ったステップです: - 1> 'sudo yum remove aws-cli' 2>' sudo pip install awscli' – Anuroop

2

Macの場合sudo pip install awscliとすると問題が解決するはずです。

+1

Amazon Linux AMIでまったく同じ 'pip install'コマンドが私のために働きました。問題が解決しました。ありがとう! – Anuroop

1

これは私の仕事:

sudo pip install --upgrade awscli 
関連する問題