Ars*_*nko 86 python pip virtualenv
我尝试pip在Ubuntu机器上的虚拟环境中部署Python包,但遇到与权限相关的问题.例如:
(TestVirtualEnv)test@testServer:~$ pip install markdown2
Run Code Online (Sandbox Code Playgroud)
终止于:
错误:无法创建'/home/test/virtualenvs/TestVirtualEnv/lib/python3.3/site-packages/markdown2.py':权限被拒绝
我不能sudo,因为它将全局安装包,而不是在虚拟环境中.我chown编辑site-packages; ls只显示相关的目录easy_install,pip并setuptools,并没有相关的降价.
如何在pip不遇到与权限相关的错误的情况下在虚拟环境中部署程序包?
seb*_*_oe 94
virtualenv当你创建了可能发生的权限问题virtualenv的sudo,然后不操作sudo的virtualenv.
至于你的问题的评论发现,这里的解决方案是建立在virtualenv不sudo能够正常工作(尤其是写),它没有sudo.
Vin*_*oft 88
解:
如果您以root身份创建virtualenv,请运行以下命令:
sudo chown -R your_username:your_username path/to/virtuaelenv/
Run Code Online (Sandbox Code Playgroud)
这可能会解决您的问题.
干杯
就我而言,我使用的是mkvirtualenv,但没有告诉它我将使用 python3。我收到此错误:
mkvirtualenv hug
pip3 install hug -U
....
error: could not create '/usr/lib/python3.4/site-packages': Permission denied
Run Code Online (Sandbox Code Playgroud)
它在指定 python3 后工作:
mkvirtualenv --python=/usr/bin/python3 hug
pip3 install hug -U
Run Code Online (Sandbox Code Playgroud)
小智 6
如果您使用 root 创建了虚拟环境,则使用此命令
sudo su
Run Code Online (Sandbox Code Playgroud)
它将为您提供 root 访问权限,然后使用它激活您的虚拟环境
source /root/.env/ENV_NAME/bin/activate
Run Code Online (Sandbox Code Playgroud)
permission denied我在尝试激活我的虚拟环境时遇到了这个问题。我登陆此页面试图找到解决方案,因此也许这也可以帮助面临类似问题的其他人
source your_env_name_goes_here/bin/activate
Run Code Online (Sandbox Code Playgroud)
我使用了错误的命令(没有source)来激活我的环境。如果你打开了,zsh那就是正确的命令。如果没有,python 文档有一个根据您的平台和 shell(windows 或 mac、bash 或 powershell 等)使用的命令表
我没有使用 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
Run Code Online (Sandbox Code Playgroud)
如您所见,utils.egg-info属于rootnot macuser。这就是为什么它给我permission denied错误。我也必须删除,/Users/macuser/.virtualenvs/armoury/lib/python2.7/site-packages/utils.egg-link因为它也是由创建的root。pip install -e .删除这些后我又做了一次,它奏效了。
| 归档时间: |
|
| 查看次数: |
81519 次 |
| 最近记录: |