19

pip を使用して複数のパッケージをインストールしようとしています。sudo を使用してこれを行うと、「インデックス ベース URL https://pypi.python.org/simple/を取得できません」というエラーが発生します。sudo なしでコマンドを実行すると、パッケージは正常にダウンロードされますが、十分な権限がありません。このような異なる行動の理由は何でしょうか? 私はプロキシの後ろに座っています。

4

6 に答える 6

31

多分試してみてくださいsudo -E

 -E          The -E (preserve environment) option indicates to the secu‐
             rity policy that the user wishes to preserve their existing
             environment variables.  The security policy may return an
             error if the -E option is specified and the user does not
             have permission to preserve the environment.

プロキシ設定が通常のユーザー環境で設定されていることを前提としていますが、実行時に得られるものではありませんsudo

于 2013-03-19T13:42:24.007 に答える
4

使用しようとしたときにこの問題が発生しましたpip==1.5.4

これは、SSL 証明書を信頼する PIP および Python の PYPI に関連する問題です。Mac OS X の PIP ログ ( /Users/username/.pip/pip.log)を見ると、詳細が表示されます。

さまざまなことを何時間も試した後、PIP を元に戻して実行するための私の回避策は、それがvirtualenvにあるか通常のsite-packagesにあるかにかかわらず、Python で自分のサイト パッケージに移動し、現在の PIP バージョンを削除することでした。私にとってはpip==1.5.4

PIP ディレクトリと PIP Egg ファイルを削除しました。それから私は走った

easy_install pip==1.2.1  

このバージョンの PIP には SSL の問題はありません。その後pip install -r requirements.txt、virtualenv 内で通常どおり実行して、requirements.txtファイルにリストされている必要なすべてのパッケージをセットアップすることができました。

これは、私が見つけたこの Google グループで数人が問題を解決するために推奨されるハックでもあります。

https://groups.google.com/forum/#!topic/beagleboard/aSlPCNYcVjw

[編集]

異なるバージョンの PIP がグローバルにインストールされている場合、新しい virtualenv を作成するたびにそのバージョンの PIP がインストールされるため、グローバルにインストールされたバージョンを変更しない限り、新しい PIP ごとに毎回これを行う必要があります。新しいプロジェクトを開始するときにこの問題に遭遇し、修正をやり直して元に戻す必要がありましたpip==1.2.1

于 2014-03-17T03:00:57.403 に答える