CentOS 6系统默认Python版本是2.6.6,现在许多库对Python的要求是2.7.X版本如Pip,故将版本升级并用此文记录下升级过程。
升级Python
-
准备安装包
首先确认当前系统环境是否安装了相关依赖包,如未安装请安装
[root@yun ~]# yum install vim gcc make wget -y [root@yun ~]# yum install openssl-devel zlib-devel readline-devel sqlite-devel -y 复制代码
# 下载 [root@yun ~]# cd /usr/local/src [root@yun ~]# wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz # 解压 [root@yun ~]# tar -zxvf Python-2.7.10.tgz [root@yun ~]# ls Python-2.7.10 Python-2.7.10.tgz 复制代码
-
编译安装
[root@yun ~]# cd Python-2.7.10 [root@yun Python-2.7.10]# ./configure --enable-shared --enable-loadable-sqlite-extensions \ --prefix=/usr/local/python27 --with-zlib --with-ssl [root@yun Python-2.7.10]# vim ./Modules/Setup # 找到下边这一行内容,去掉注释 #zlib zlibmodule.c -I$(prefix)/include -L$(exec_prefix)/lib -lz [root@yun Python-2.7.10]# make && make install 复制代码
-
替换版本
[root@yun Python-2.7.10]# python -V Python 2.6.6 # 版本依旧是 2.6.6 复制代码
用 python2.7 替换旧版本
[root@yun Python-2.7.10]# cd /usr/bin/ [root@yun bin]# ls python* -l lrwxrwxrwx 1 root root 33 Jul 3 20:13 python lrwxrwxrwx 1 root root 6 Aug 18 2016 python2 -> python -rwxr-xr-x 1 root root 9032 Aug 18 2016 python2.6 -rwxr-xr-x 1 root root 1418 Aug 18 2016 python2.6-config lrwxrwxrwx 1 root root 16 Aug 2 2017 python-config -> python2.6-config 复制代码
[root@yun bin]# mv /usr/bin/python /usr/bin/python2.6.6 [root@yun bin]# ln -s /usr/local/python27/bin/python2.7 /usr/bin/python 复制代码
[root@yun bin]# ls python* -l lrwxrwxrwx 1 root root 33 Jul 3 20:03 python -> /usr/local/python27/bin/python2.7 lrwxrwxrwx 1 root root 6 Aug 2 2017 python2 -> python -rwxr-xr-x 1 root root 9032 Aug 18 2016 python2.6.6 -rwxr-xr-x 1 root root 1418 Aug 18 2016 python2.6-config lrwxrwxrwx 1 root root 16 Aug 2 2017 python-config -> python2.6-config 复制代码
#验证 [root@vip bin]# python -V Python 2.7.10 复制代码
到此为止Python已成功升级到2.7版本?
如python -V 遇到问题不要慌
python: error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file: No such file or directory # 原因:linux系统默认没有把/usr/local/python27/lib路径加入动态库搜索路径 复制代码
#解决 [root@yun ~]# vim /etc/ld.so.conf # 添加如下一行内容 /usr/local/python27/lib [root@yun ~]# ldconfig # 使新添加的路径生效 复制代码
解决yum兼容问题
升级 python 后 yum 会出现问题,因为 yum 是不兼容 Python 2.7 的,所以 yum 不能正常工作,我们需要指定 yum 的 Python 为 2.6。
#解决
[root@yun bin]# vim /usr/bin/yum
#!/usr/bin/python
# 第一行修改为 python2.6.6
#!/usr/bin/python2.6.6
复制代码
安装pip
-
下载安装
To install pip, securely download get-pip.py:
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
Inspect get-pip.py for any malevolence. Then run the following:
python get-pip.py
-
设置软连接
[root@yun ~]# ln -s /usr/local/python27/bin/pip2.7 /usr/bin/pip 复制代码
参考资料:
https://www.cnblogs.com/liwei0526vip/p/6219998.html http://blog.51cto.com/xitongjiagoushi/1681983