场景
python : python27
redis: redis-2.10.5
之前发生过一次忘记记录了,在给redis加密码以后,python
的组件想要连接上redis集群,需要把rediscluster
模块升级到python27-redis-py-cluster-1.3.4
版本。
遇到的问题
如下图,可以很明显的看到,我已经用rpm包升级了,安装的也是1.3.4
版本的
进入到python里看,还是1.1.0
版本的(这个rpm大概率是我们自己的人编译出来的)
解决办法
我用了find
命令找到了1.1.0
版本的残留包
find ./ -name "*redis*" | grep cluster
把他移除以后发现可以了。
为什么python
能安装到指定的目录,八成是因为rpm
定制了。
PS: 对了,更新完需要重启python
组件。
python包安装的路径
1、系统自带python
系统自带软件管理器安装, 模块将被安装到 dist-packages
/usr/lib/python2.7/dist-packages/
从 easy_install 和 pip (注: 是python的软件管理其,python有许许多多的软件) 使用,他们也使用 dist-packages,但是路径是:
/usr/local/lib/python2.7/dist-packages/
2、自己安装或者升级过后的python
python安装第三方库的路径是:
/usr/lib/python2.7/site-packages/
从 easy_install 和 pip 安装的第三方库安装路径是:
/usr/local/lib/python2.7/site-packages/
3、非root用户,从 easy_install 和 pip安装第三方库的安装路径是
~/.local/lib/python2.7/site-packages
有时候需要检查第三方库的路径是否在(笔者在这里碰见过一个坑,正常路径下又某个库,但是import找不到,只能指向这里的对应的库)
~/.local/lib/python2.7/site-packages/external/protobuf/python
引用
python安装第三方包的安装路径,dist-packages和site-packages区别