AWS

【失敗】AWSのCloud9でpipコマンドエラー【挫折しない】

2020/01/27

AWSイメージ

AWS初心者
AWSのCloud9でpipコマンドを使用するとエラーが発生する。全然解決出来ない。。

 
上記悩みを解決します。
 

たけ
大手SI企業の現役エンジニアです。AWSでPythonを利用したプログラム作成が得意です。

 

 本記事を読んで欲しい人

初めてAWSのCloud9でPythonの開発していた時、環境設定で大きく躓き、心が折れました。私と同じ方の解決になればと思います。

 
たけ
分からない事があったら「お問い合わせ」から連絡下さい

AWSのCloud9でpipコマンドエラー

AWS Cloud9のターミナルからpipコマンド「pip install requests」を発行すると、エラーメッセージが出て、ライブラリのインストールが出来ません。
 

ec2-user:~/environment $ pip install requests

Requirement already satisfied: requests in /usr/lib/python2.7/dist-packages
You are using pip version 9.0.3, however version 20.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

これは、pipコマンドのバージョンが古い(9.0.3)ので「pip install --upgrade pip」コマンドを実行して、アップデートしてね。っていうことです。
 

エラー内容に沿って、アップデートコマンド「pip install --upgrade pip」を実行すると、、エラーが。。

ec2-user:~/environment $ pip install --upgrade pip

OSError: [Errno 13] Permission denied: '/usr/bin/pip'

これは「実行権限が無いよ~」っていう事です。通常ユーザで実行した場合、結構発生するエラーです。

スーパーユーザ権限をつけてコマンド「sudo pip install --upgrade pip」を実行。

ec2-user:~/environment $ sudo pip install --upgrade pip

Successfully installed pip-20.0.1

キター!!アップデートに成功!
 

再度pipのバージョンを確認しますが、エラーが。。

ec2-user:~/environment $ pip --version

bash: /usr/bin/pip: No such file or directory

該当のファイルやディレクトリは無いよ」って言われてます。

これは、ハッシュテーブルに記憶しているパス情報を消去していないからですね。

簡単に説明すると、プログラムのキャッシュと同じ様なものでして、使用頻度の高いコマンド(pip)はハッシュテーブルと呼ばれる領域に記憶されています。

今回の場合、古いバージョンのpipコマンドがハッシュテーブルに記憶されているので、下記コマンド「hash -r」で情報を消去しましょう。

ec2-user:~/environment $ hash -r

再度、pipのバージョンを確認。

ec2-user:~/environment $ pip --version

pip 20.0.2 from /usr/local/lib/python2.7/site-packages/pip (python 2.7)

無事にバージョンが上がっていることを確認出来ましたね。
 
再度、インストールを実行

ec2-user:~/environment $ pip install requests

DEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
Defaulting to user installation because normal site-packages is not writeable
Requirement already satisfied: requests in /usr/lib/python2.7/dist-packages (1.2.3)

URL付きで、ご丁寧に警告が出ていますね。

該当のサイトを確認しましたが、pythonのバージョンを上げてくださいとのことです。

こちらについては「AWS(Cloud9)のPythonバージョンアップ」にまとめています。


 

AWS(Cloud9)のpipコマンドバージョンアップについては以上です。
 

たけ
AWSで挫折しそうだったり、悩んだ場合は気軽にお問い合わせから連絡下さい。良いプログラムが出来た!という報告も待ってます!

 


関連記事
失敗イメージ
【未経験】AWSの資格取得に向けた勉強方法【失敗を回避する】

-AWS

Copyright© JavaSkillHacks , 2020 All Rights Reserved.