【非root用户】安装【python,pip,package】
安装python:
下载源码 解压 进入
./configure --prefix=/path/python3.6
注意一定要设置prefix,否则默认安装到/usr/local make make install
没有make install,然后使用的话可能会报 ModuleNotFoundError: No module named '_ctypes' 错误
安装完成后进入指定的目录看一下,可以看到四个目录
安装pip:
我用源码安装python3之后,可以看到pip也顺带安装好了,不知道是python3自带的还是单纯给环境变量里已有的pip做了个link,反正位置在/python_home/bin/pip
如果手动安装(没试过):
方法一
安装setuptool
wget --no-check-certificate http://pypi.python.org/packages/source/s/setuptools/setuptools-2.0.tar.gz
tar -xzvf setuptools-2.0.tar.gz
cd setuptools-2.0
/home/lilei/software/python27/bin/python setup.py install 安装pip wget --no-check-certificate https://pypi.python.org/packages/41/27/9a8d24e1b55bd8c85e4d022da2922cb206f183e2d18fee4e320c9547e751/pip-8.1.1.tar.gz#md5=6b86f11841e89c8241d689956ba99ed7
tar -xzf pip-8.1..tar.gz
cd pip-8.1.
/home/lilei/software/python27/bin/python setup.py install
方法二:
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py --user
这里的python如果是2.7就按照的是pip2, 如果是3就安装pip3。
一定记得使用 –user 参数否则你还是没有权限。。。
安装完成后会在家目录下生成 .local 文件夹,里面有bin和lib, bin 里就有我们需要的pip、easy_install
如果想直接使用,需要加入环境变量。
export PATH=~/.local/bin:$PATH
安装package:
注意:
python、python包、pip三者是独立的
如果python -m pip 的话,就会调用环境变量的pip
如果python /path_to_your_pip/pip 的话,就会调用指定路径的pip
但是无论用哪个pip,python包的安装位置如果不在pip命令中用--user或 指定的话,就默认安装在PYTHONPATH中
因此就算使用的python在/usr或/usr/local里,就算使用的pip在/usr或/usr/local里,只要你使用了--user选项或将PATHONPATH修改为了你可以访问的路径,就能安装
方法一:
安装到自己目录下:
python3 -m pip install --user numpy
方法二:
安装到指定目录:
将PYTHONPATH修改为只有一个你自己有权限的目录,然后python pip install
(或用 pip install --target=/home/pythonDirect/ packageName,没试过)
方法三(没试过):使用虚拟环境
很多时候我们不同的项目需要的包的版本不同,我们可以采用virtualenv做一个独立的生态系统。
# 安装virtualenv
pip install --user virtualenv
virtualenv env
source env/bin/activate
这样就进入了一个独立的python环境,再用pip安装就可以了。具体的使用可以搜索
【非root用户】安装【python,pip,package】的更多相关文章
- Linux 下非 root 用户安装 theano(配置 GPU)
非 root 用户,安装 Python 第三方的包,尤其像 theano,存在大量的依赖项,存在的主要问题,是安装各个包时的权限问题.所幸,存在这样一个集成工具,叫 anaconda,其已经内置了许多 ...
- Linux环境(服务器)下非root用户安装Python3.6
Linux环境(服务器)下非root用户安装Python3.6 在管理实验室集群时候,遇到的问题--非root用户在搭建自己环境时候,如何搭建. 注意: root用户的根目录是root,非root用户 ...
- Linux 以非root用户安装zsh&配置on my zsh
此文章参考以下三篇文章,如有侵权请联系 Linux非root用户安装zsh, 并用oh-my-zsh进行配置 在没有sudo权限的Linux服务器下安装oh-my-zsh 不使用root权限安装zsh ...
- 非root用户安装软件
下面简要说一下Linux下非root用户安装软件的一般流程: 1. 获取源代码,一般是wget方式,ubuntu可以使用apt-get source来获取源代码. 2. 解压源代码,一般使用tar - ...
- 源代码安装-非ROOT用户安装软件的方法
0. 前言 如果你没有sudo权限,则很多程序是无法使用别人编译好的文件安装的. 还有时候,没有对应你的主机配置的安装包,这时候需要我们自己下载最原始的源代码,然后进行编译安装. 这样安装的程序 ...
- zzw_非root用户安装python3.5
目的:不想改变linux 自带的python,只想要用特定的非root用户运行特定版本的python 1.进入非root用户 2.新建一个python3.5的安装目录 [a4_csbdc@bdc816 ...
- perl 下使用非root用户安装模块
perl下安装模块可以使用cpan命令,但是通常我们不具有root用户权限,所以只能以sudo方式安装模块. 例如需要安装Net::SCP::Expect模块, 执行cpan Net::SCP::Ex ...
- 【tf.keras】Linux 非 root 用户安装 CUDA 和 cuDNN
TensorFlow 2.0 for Linux 使用时报错:(cuDNN 版本低了) E tensorflow/stream_executor/cuda/cuda_dnn.cc:319] Loade ...
- Linux下非root用户安装软件的一般流程:
1. 获取源代码,一般是wget方式,ubuntu可以使用apt-get source来获取源代码. 2. 解压源代码,一般使用tar -zxvf xxx.tar.gz即可 3. 切换到解压后的目录, ...
- Linux系统非root用户安装perl模块
非root权限安装perl 在使用Linux或是unix时,perl是一个非常有用的脚本的语言. 关于perl的模块安装,网上也有很多介绍,一方面可以通过不同套件自带的软件安装工具安装,一方面可以通过 ...
随机推荐
- Python 元祖的操作
注意:元祖定义后不可修改,单个元祖后面必须加逗号,否则认为是字符串:tuple = ('apple',) 1.定义元祖 tuple = ('apple','banana','grape','orang ...
- 理解vertical-align或“如何竖向居中”<转>
在各种技术论坛里经常会有这样的问题提出,“我如何能将这个东西竖向居中?”这个问题通常会跟随着这样一句话,“我使用了 vertical-align:middle,但是不管用! ” 这个问题其实有三个层面 ...
- LVM简介
3. 创建VG.. 7 4. 创建LV.. 9 5.LV格式化及挂载... 10 一.LVM简介 LVM是 Logical Volume Manager(逻辑卷管理)的简写,它由Heinz Mauel ...
- Apache ab使用POST参数进行压力测试 (服务端为Django)
2016年07月07日 15:04:51 常城 阅读数:13774更多 个人分类: PythonLinux架构 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.cs ...
- 关于json动态拼接响应数据
在EasyUI http://www.jeasyui.com/demo/main/get_users.php 响应数据如下格式: { "total": "11" ...
- 一个线程可以拿到多个锁标记,一个对象最多只能将monitor给一个线程
当用Synchronized修饰某个方法的时候,表示该方法都对当前对象加锁. 给方法加Synchronized和用Synchronized修饰对象的效果是一致的. 一个线程可以拿到多个锁标记,一个对象 ...
- TMS320C64x DSP L1 L2 Cache架构(1)——C64x Cache Architecture
[前沿]研究生阶段从事于DSP和FPGA技术的相关研究工作,学习并整理了大量的技术资料,包括TI公司的官方文档和网络上的详细笔记,花费了大量的时间和精力总结了前人的工作成果.无奈工作却从事于嵌入式技术 ...
- c# http请求,获取非200时的响应体
HttpWebResponse res = null; try { res = request.GetResponse() as HttpWebResponse; } catch (WebExcept ...
- hdu 1253:胜利大逃亡(基础广搜BFS)
胜利大逃亡 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submi ...
- 显示图片中CDC和HDC问题
(m_Pic.LoadPictureData(pBuffer, nSize));//接作调用函数读pBuffer的jpg数据准备显示 showimage();//显示图片 void Caccess_t ...