美文网首页
怎么给离线环境服务器快速安装需要的python包(续)

怎么给离线环境服务器快速安装需要的python包(续)

作者: 唐山_risk | 来源:发表于2018-08-30 16:28 被阅读285次

当老板把服务器环境告诉你,并且告诉你出于安全考虑不能与外网连接,你原来那些能够自动解决依赖问题的手段都不能用了?是不是泪奔崩溃中?没有,那么花了一天时间发现还没搞定的时候是不是崩溃了?

你以为学了我上文告诉大家的方法就可以了?so young so naive!!!

并不能!

因为你根本没搞清楚你的服务器环境,你会发现你虽然费劲巴拉的手动安装完,但并没有解决报依赖包不存在的错!

年轻人,怪就只怪自己年轻!

你并没有查看 你服务器上有几个python版本,你需要按照如下方法操作:

1、查看服务器安装版本和路径,以及默认python路径。

# whereis python

>python: /usr/bin/python3.5m /usr/bin/python2.7 /usr/bin/python3.5-config /usr/bin/python2.7-config /usr/bin/python3.5m-config /usr/bin/python3.5 /usr/bin/python /usr/lib/python2.7 /usr/lib/python3.5 /etc/python2.7 /etc/python3.5 /etc/python /usr/local/lib/python2.7 /usr/local/lib/python3.5 /usr/include/python3.5m /usr/include/python2.7 /usr/include/python3.5 /usr/share/python /home/lst001/anaconda3/bin/python3.6 /home/lst001/anaconda3/bin/python3.6-config /home/lst001/anaconda3/bin/python /home/lst001/anaconda3/bin/python3.6m /home/lst001/anaconda3/bin/python3.6m-config /usr/share/man/man1/python.1.gz

瞧,我有三个版本,预装的2.7 3.5以及我自己装的anaconda3 里面带的3.6.再看一下默认版本:

lst001@lst001:~$ python

Python 3.6.5 |Anaconda, Inc.| (default, Apr 29 2018, 16:14:56)

lst001@lst001:~$ python2

Python 2.7.12 (default, Dec  4 2017, 14:50:18)

lst001@lst001:~$ python3

Python 3.6.5 |Anaconda, Inc.| (default, Apr 29 2018, 16:14:56)

你以为这样完了,并没有,你会发现随后通过pip安装的包,在python里使用import命令提示找不到module,排查后发现pip安装在了默认的python 2.7的文件夹下。

这是由于sudo命令下python的寻址结果依然为python 2.7,因此在pip安装文件夹下,通过sudo命令sudo python setup.py install安装pip,会默认安装至python2.7的文件夹下。

你需要知道sudo python 以及pip pip3 和sudo pip 都指向哪里。所以 依次验证

sudo python 

sudo python2

sudo python3

pip -V

pip3 -V

sudo pip -V 

sudo pip3 -V

发现都不一样,怎么解决?使用update-alternatives

方法:

jennifer@jennifer-pc:~$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 20

[sudo] jennifer 的密码:

update-alternatives: 使用 /usr/bin/python2.7 来在自动模式中提供 /usr/bin/python (python)

jennifer@jennifer-pc:~$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 50

update-alternatives: 使用 /usr/bin/python3.5 来在自动模式中提供 /usr/bin/python (python)

jennifer@jennifer-pc:~$ sudo update-alternatives --config python

[sudo] jennifer 的密码:

有 2 个候选项可用于替换 python (提供 /usr/bin/python)。

选择      路径              优先级  状态

------------------------------------------------------------

* 0            /usr/bin/python3.5  50        自动模式

1            /usr/bin/python2.7  20        手动模式

2            /usr/bin/python3.5  50        手动模式

要维持当前值[*]请按<回车键>,或者键入选择的编号:

查看python本版,已经成功切换到3.5

jennifer@jennifer-pc:~$ python --version

Python 3.5.2 :: Anaconda 4.2.0 (64-bit)

jennifer@jennifer-pc:~$ sudo python

Python 3.5.2 (default, Nov 23 2017, 16:37:01)

[GCC 5.4.0 20160609] on linux

Type "help", "copyright", "credits" or "license" for more information.

参考文章链接:https://blog.csdn.net/JasonDing1354/article/details/50470109

相关文章

网友评论

      本文标题:怎么给离线环境服务器快速安装需要的python包(续)

      本文链接:https://www.haomeiwen.com/subject/lckdwftx.html