CentOS 6.8升级系统自带python

Centos 6.8上自带的python是2.6.6,这和我想要的新版python差别太多,毕竟现在python现在已经更新到3.5,不同版本之间差别还是很多的。本来想使用yum在线更新python:

[root@localhost ~]# yum update python


谁知道yum竟然告诉我:

Loaded plugins: fastestmirror, security
Setting up Update Process
Loading mirror speeds from cached hostfile
No Packages marked for Update

没有可以更新的包。那只能手动用源码包更新了。由于linux上很多的软件都是依赖python的,所以旧版的python千万不能卸载掉,例如yum就是依赖python的。只能安装一个新版本的python,让两者共存,然后在实际使用过程中再使用新版本的python。

1.安装之前的准备工作:

先查询以下有没有安装以下模块:

rpm -q openssl-devel
rpm -q gcc

如果有未安装则请往下看,如果以上两个都安装了,请跳到第2条。

安装3.5版的python,肯定顺带安装上pip啦!之前我是直接下载源码包安装,然后再单独安装pip,最后各种报错,无法使用,于是我又重新删除,并且重新下载了一遍,因为在安装之前需要安装以下环境:

安装编译环境

yum -y install gcc(编译源码包的时候用到)

然后安装openssl-devel(安装pip的时候用到)
yum -y install openssl-device

2.首先下载python3.5源码包:

wget https://www.python.org/ftp/python/3.5.3/Python-3.5.3.tgz
由于python的服务器位于国外,所以下载可能有点慢,请耐心等待...
3.下载好了之后解压:
tar -xzvf Python-3.5.3.tgz
4.解压好了之后开始配置安装路径:
首先新建一个文件夹用于存放python3
mkdir /var/local/python3

然后进入解压的python-3.5文件夹执行下列操作:
./configure --prefix=/var/local/python3

5.开始编译
make
如果编译过程中报错,就不用继续下一步了,请执行 make clean 清除掉编译的文件
6.编译好之后开始安装编译好的文件
make install
7.由于系统中默认有一个2.6版本的python,所以我们要把新版本的python做一个软连接放在 /usr/bin中
先删掉原来的python:
rm -y /usr/bin/python
注意:python2.6千万不要删,删了yum就无法恢复使用了!
再创建一个软连接:
ln -s /var/local/python3/bin/python3.5 /usr/bin/python

这时输入python -V 就可以看到python的版本已经是3.5.3版本
然后再创建一个python3的命令,这样用python和python3都可以直接进入python环境:
ln -s /usr/bin/python /usr/bin/python3

同时为了pip可以方便的安装python模块,也要把pip创建软连接到/usr/bin中:
ln -s /var/local/python3/bin/pip3 /usr/bin/pip

好了,以上就完成了所有的安装,可以顺便更新一下pip:
pip install --upgrade pip

8.由于yum是依赖于老版本的Python,所以安装了新版之后,yum就无法使用了,解决方法:
vim /usr/bin/yum
进入到yum中修改yum的注释,将 #!/usr/bin/python
修改为#!/usr/bin/python2.6
OK保存退出。
完成!

 
 

猜你喜欢

转载自blog.csdn.net/getcomputerstyle/article/details/64921103