web-dev-qa-db-ja.com

virtualenvでpipを使用するときに「許可が拒否されました」を回避する方法

Ubuntuマシンの仮想環境でPythonパッケージをpipでデプロイしようとしましたが、許可関連の問題が発生しました。例えば:

(TestVirtualEnv)test@testServer:~$ pip install markdown2

次で終了します:

エラー: '/home/test/virtualenvs/TestVirtualEnv/lib/python3.3/site-packages/markdown2.py'を作成できませんでした:許可が拒否されました

仮想環境内ではなくグローバルにパッケージをインストールするため、Sudoはできません。 I chowned site-packages; lsは、easy_installpip、およびsetuptoolsに関連するディレクトリのみを表示し、Markdownに関連するものは何も表示しません。

許可関連のエラーが発生せずにpipを使用して仮想環境にパッケージを展開する方法

81

virtualenvvirtualenvとして作成し、SudoSudoなしで操作すると、virtualenv許可の問題が発生する場合があります。

あなたの質問のコメントにあるように、ここでの解決策は作成virtualenvなしでSudowork(特に書きます)にできるようにすることです。 Sudoなしで。

91
sebastian_oe

解決策:

Virtualenvをルートとして作成した場合は、次のコマンドを実行します。

Sudo chown -R your_username:your_username path/to/virtuaelenv/

これで問題が解決する可能性があります。

乾杯

82
Vingtoft

私の場合、mkvirtualenvを使用していましたが、python3を使用するつもりだとは言いませんでした。私はこのエラーを受け取りました:

mkvirtualenv hug
pip3 install hug -U

....
error: could not create '/usr/lib/python3.4/site-packages': Permission denied

Python3を指定した後に動作しました:

mkvirtualenv --python=/usr/bin/python3 hug
pip3 install hug -U
4
nealmcb

Sudoを使用してvirtualenvを作成しませんでした。したがって、セバスチャンの答えは私には当てはまりませんでした。私のプロジェクトはutilsと呼ばれます。 utilsディレクトリを確認し、これを見ました:

-rw-r--r--   1 macuser  staff   983  6 Jan 15:17 README.md
drwxr-xr-x   6 root     staff   204  6 Jan 14:36 utils.Egg-info
-rw-r--r--   1 macuser  staff    31  6 Jan 15:09 requirements.txt

ご覧のとおり、utils.Egg-inforootではなく、macuserによって所有されています。そのため、permission deniedエラーが発生していました。 rootによって作成された/Users/macuser/.virtualenvs/armoury/lib/python2.7/site-packages/utils.Egg-linkも削除する必要がありました。それらを削除した後、もう一度pip install -e .を実行しましたが、うまくいきました。

4
AliBZ

仮想環境をアクティブにしなかった pipを使用する前。

で試してください:

$(your venv path) . bin/activate

次に、メインフォルダーでpip -r requirements.txtを使用します

1
jmrueda

Sudoを使用する場合、virtualenvの作成中にディレクトリがルート権限で作成されるため、非Sudoユーザーでパッケージをインストールしようとすると、そこにインストールする権限がありません。そのため、常にSudoなしでvirtualenvを作成し、Sudoなしでインストールしてください。

グローバルpythonにインストールされているパッケージをvirtualenvにコピーすることもできます。

cp -r /lib/python/site-packages/* virtualenv/lib/python/site-packages/
0