Help us understand the problem. What is going on with this article?

Amazon Linux で aws cliのエラー(import AliasedEventEmitter)

More than 1 year has passed since last update.

事象

複数台ある端末の一つ(Amazon Linux 2018.03)でaws-cliコマンド(例えば$ aws --version)を実行すると以下のエラーが発生。以前(それほど昔ではない)は使えていた。

Traceback (most recent call last):
  File "/usr/bin/aws", line 19, in <module>
    import awscli.clidriver
  File "/usr/lib/python2.7/dist-packages/awscli/clidriver.py", line 19, in <module>
    from botocore.hooks import AliasedEventEmitter
ImportError: cannot import name AliasedEventEmitter

環境

項目 バージョン
OS Amazon Linux AMI release 2018.03
aws cli 1.15.83-1.49
(yumによる)botocore 1.10.82
(pipによる)botocore 1.10.6

原因と対策

(2018/11/08 追記) 正しい対処

どうしても aws cliを最新にしたかったので追加調査したところ以下で修正できました。
pipでインストールしていたbotocoreが古かったのが原因だったようです。

$ sudo pip install botocore==1.10.82

ダウングレード(非推奨)

aws-cliとbotocoreのダウングレードでも解決できます。

$ sudo yum downgrade aws-cli python27-botocore

※aws-cliとbotocoreは相互に依存性があるので同時に指定しないとダウングレードできません。

参考

AWS Developer Forums: AWS CLI not working on Amazon Linux ...

s-katsumata
東京在住の二児の父。絶賛育児中。業界歴21年、フリーランス歴13年。在宅でシステム開発(受託、自社パッケージ)に従事。生涯コード書いていたいアラフィフプログラマ。悩みは老眼。ミッションはスクラッチ開発した「みなたび」を使って地域で頑張る人を応援
https://nyango.com/services/travel
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした