以非root身份安装Python的Module或者Package以及pip安装指定路径

Posted ExplorerMan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了以非root身份安装Python的Module或者Package以及pip安装指定路径相关的知识,希望对你有一定的参考价值。

因为要远程访问公司的服务器,没有sudo的权限,所以在安装python的一些包的时候就不能安去默认路径了(比如以/usr/local/lib/为prefix的路径)。

一般来讲用easy_install或者pip来安装的时候都默认在PATHONPATH的site-packages下面,比如/usr/lib64/python2.7/site-packages。

  1. 用pip
    pip install --user package_name

  2. 用easy_install
    easy_install --prefix=$HOME/local package_name

这样就会安装到$HOME/local/lib/pythonX.Y/site-packages中去。

别忘了这个路径一定要加到环境变量PYTHONPATH中,不然之后import模块的时候是找不到它的。

  1. pip指定路径:
sudo pip install six --upgrade --target="/usr/lib/python2.7/dist-packages"

我在安装tensorflow时发现sys.path会先找/usr/lib/python2.7/dist-packages,但是pip默认安装在/usr/local/...下面,所以指定target是必要的,否则可能即使upgrade了在python执行时找的库依然时没升级的。

小礼物走



作者:麦兜胖胖次
链接:https://www.jianshu.com/p/92a109ddf695
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

以上是关于以非root身份安装Python的Module或者Package以及pip安装指定路径的主要内容,如果未能解决你的问题,请参考以下文章

如何以非 root 用户身份使用 CPAN?

如何利用virtualenv工具在JupyterHub上以非root权限创建基于Python3.6.6的虚拟环境?

如何在 Docker 容器中以非 root 用户身份启动 cron?

以非 root 身份运行闪亮的服务器

Firefox headless 不能在 Docker 中以非 root 用户身份工作

以非 root 用户身份使用 libusb-1.0 访问 USB 设备