如何避免“权限被拒绝"将 pip 与 virtualenv 一起使用时 [英] How to avoid "Permission denied" when using pip with virtualenv
问题描述
我尝试在 Ubuntu 机器上的虚拟环境中使用 pip
部署 Python 包,但遇到与权限相关的问题.例如:
I attempt to deploy a Python package with pip
in a virtual environment on an Ubuntu machine, but encounter a permission-related issue. For example:
(TestVirtualEnv)test@testServer:~$ pip install markdown2
终止于:
错误:无法创建'/home/test/virtualenvs/TestVirtualEnv/lib/python3.3/site-packages/markdown2.py':权限被拒绝
error: could not create '/home/test/virtualenvs/TestVirtualEnv/lib/python3.3/site-packages/markdown2.py': Permission denied
我不能sudo
,因为它将全局安装包,而不是在虚拟环境中.我chown
ed site-packages
;ls
仅显示与 easy_install
、pip
和 setuptools
相关的目录,与 Markdown 无关.
I can't sudo
, since it will install the package globally, and not within the virtual environment. I chown
ed site-packages
; ls
shows only directories related to easy_install
, pip
and setuptools
, and nothing related to Markdown.
如何在虚拟环境中使用 pip
部署包而不遇到权限相关的错误?
How to deploy a package in a virtual environment with pip
without encountering permission-related errors?
推荐答案
virtualenv
将 virtualenv
创建为 sudo
时可能会出现权限问题然后在 virtualenv
中不使用 sudo
进行操作.
virtualenv
permission problems might occur when you create the virtualenv
as sudo
and then operate without sudo
in the virtualenv
.
正如您在问题的评论中所发现的,这里的解决方案是创建 virtualenv
没有 sudo
以便能够工作(尤其是写入)没有 sudo
.
As found out in your question's comment, the solution here is to create the virtualenv
without sudo
to be able to work (esp. write) in it without sudo
.
这篇关于如何避免“权限被拒绝"将 pip 与 virtualenv 一起使用时的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!