为啥我的python虚拟环境使用pip安装模块,必须使用sudo
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为啥我的python虚拟环境使用pip安装模块,必须使用sudo相关的知识,希望对你有一定的参考价值。
首先你要知道你自己的使用环境。那么你的情况 Linux + Py2.7。
之后,明白各个命令的含义。
pip 是安装库,sudo呢,你是否知道?
那么在此基础上,你自己也知道了虚拟环境的目录为当前用户的话则不需要。
这个知识点就是涉及到Linux的目录的权限问题了。
当前用户登录的时候,你可以进行的所有操作权限都是分配给当前用户已有的。
比方你是某网站普通会员,必然没有办法做后台操作。
这样就很明了了。/usr/local/.... 这个目录的所属权、使用权暂时都不在当前用户下,可用ls命令查看到(需加参数),自行对比当前用户下的目录。
用sudo 即可临时获取类Root的超级权限,自然也就可以进行读写操作了。 参考技术A virtualenv Permission denied 新建的python虚拟环境的目录的所属者必须是当前用户,才不会出现这种错误 比如 virtualenv py27 chown ppc py27 再进入这个虚拟环境就不会出现这个情况了 参考技术B virtualenv Permission denied
新建的python虚拟环境的目录的所属者必须是当前用户,才不会出现这种错误
比如
virtualenv py27
chown ppc py27
再进入这个虚拟环境就不会出现这个情况了
Python 虚拟环境和pip相关使用总结
在使用Python的过程中经常会使用到pip和虚拟环境,以下纪录其相关的用法
从PyPi在线安装包
pip install SomePackage # 安装最新版本
pip install --no-cache-dir SomePackage # 禁用本地缓存并安装最新版本,网络不稳定时在线安装可能下载的安装包不完整导致安装出错,再次安装时会先使用本地缓存文件,此时可禁用缓存
pip install SomePackage==1.0.4 # 安装指定版本
通过whl文件安装
通过whl文件安装首先需要安装wheel包
pip install wheel
pip install SomePackage-1.0-py2.py3-none-any.whl
通过txt文件安装
在使用虚拟环境时,通常会在项目中生成txt收集所有安装的包,以便在不同环境下可以快速安装所需的包 通过requirements.txt文件安装首先需要搜集所有的包,然后再在线安装 pip freeze > requirements.txt # 会在当前目录下生成txt文件 pip install -r requirements.txt 通过requirements.txt文件安装首先需要搜集所有的包,然后再离线安装 pip wheel --wheel-dir=/local/wheels -r requirements.txt # 会生成txt文件,并下载所有包的wheel文件保存到wheel-dir目录下 pip install --no-index --find-links=/local/wheels -r requirements.txt # 离线安装
卸载安装的包
pip uninstall SomePackage
显示安装的包
pip list # 显示所有安装的包
pip list --outdated # 显示所有可更新的包,并显示最新版本
pip show sphinx # 显示包的详细信息
搜索包
pip search peppercorn # 从PyPi搜索包
venv安装
pip install virtualenv
初始化venv环境
virtualenv /path/to/ENV/
激活venv环境
source /path/to/ENV/bin/activate
退出venv环境
deactivate
删除venv环境
(ENV)$ deactivate # 先推出 $ rm -r /path/to/ENV
以上是关于为啥我的python虚拟环境使用pip安装模块,必须使用sudo的主要内容,如果未能解决你的问题,请参考以下文章
在windows中配置pip安装源, 使用终端管理python虚拟环境, 自定义django的日志配置, 使用logging模块记录异常信息, 数据库用户及权限管理