ストックドッグ

KatoTakahiro。金融系の会社で働くSEが株やPython、その他諸々について書いています。サービスも運営してます→http://fmbrain.work

「sudo: pip: コマンドが見つかりません」というエラー

現象

このエラーは、pipコマンド自体をアップデートしていなかったら現れるようです。

#pip単体でのインストールはエラーは出ないが
pip install library

#sudoを組み合わせると、エラーが発生
sudo pip install library

sudo: pip: コマンドが見つかりません

原因

sudoの参照先にpipコマンドがないためため、コマンドが見つからないというエラーメッセージ通りです。

以下のコマンドで異なるパスを参照しようとしていることがわかります。

私はanacondaでpythonを入れているため、このような現象が起きます。

which pip
#/home/username/anaconda3/bin/pip

which sudo
#/usr/bin/sudo

/usr/bin/の中にpipコマンドがあれば、このようなエラーは起きませんが、pipはanacondaのbinにあります。

対処法1

単純明快、pipコマンドをアップグレードする。

この下のどれでもアップグレードできるので、自分の環境に合わせたコマンドを選択する。

pip install -U pip
easy_install pip
conda install pip

pipのインストーラーを直接、サイトからダウンロードしてきても可。

Installation — pip 9.0.1 documentation

ダウンロードしてきたら、ファイルを実行する。

python get-pip.py

ちなみに、自分はこれらのどれでもなく、ubuntuのapt-getで入れたpipを使っているので以下のコマンド。

sudo apt-get install python-pip

対処法2

対処法1で対処できなかった場合です。

sudoの後にanacondaのpipの参照先を指定します。

which pip
#/home/username/anaconda3/bin/pip

sudo /home/username/anaconda3/bin/pip install libname

ちょとナガイ。

環境変数を変えるなり、aliasに登録なりすると便利!

これらのどれかで解決できるはず

問題は、どの入れ方でpipをインストールしたかです。

pipとコマンドをうったときに、参照してる先のpipを指定しないとこのエラーは直りません。

以上、終わり!