web-dev-qa-db-ja.com

sudo pip install VS pip install --user

私はこれをどこで読んだか思い出せませんが、ここのどこか、または私がフォローしていたチュートリアルのコメントのいずれかで、人は言った:

'Sudo pip installを決して使用しないでください。あなたはそれを知らなくても重要なものを上書きすることができます。代わりにpip install --userを使用してください!」

どこにでもSudo pip installへの参照がたくさんあるので、この人は彼らが話していることを知っていたので、私はそれを避けるべきか、それとも...?

16
Chockomonkey
$ Sudo pip install 

pythonインストール、つまりすべてのユーザー向けに)パッケージをグローバルにインストールします。

$ pip install --user

ローカルユーザーディレクトリ、つまり〜/ .local/lib/python-あなただけにインストールします。

例:

$ Sudo pip install jupyter
$ jupyter notebook

Jupyterを実行し、Webブラウザーを開いて、ノートブックで作業できるようにします。

$ pip install --user jupyter
$ jupyter notebook

ローカルディレクトリがPATHに追加されるまで何もしません。

最近、pypiに悪意のあるコードが含まれていました。 Sipを使用してpipでインストールしないでください。これは、ルートとしてウイルスを実行するのと同じです。ローカルフォルダーをPATHに追加するか、virtualenvを使用します。

5
John Doe

Sudo pip installは、おそらくシステム全体にパッケージをインストールすることを意味します。 virtualenvwrapperなどの一部のパッケージでは便利かもしれませんが、システム全体のパッケージをインストールすることを避け、アプリケーションごとにvirtualenvを作成し、そのvirtualenvにpipをインストールします(Sudoなしで実行できます)。

4
Peter