目的:由于centos自带的python是2,我们要安装python3,并使2和3共存,通过python2来调用2,python3来调用3

自带的python的软连接的结构是,python指向python2,python2指向python2.6

且自带的python没有安装pip即pip命令无效果

1.检查系统自带的python是什么版本的

whereis python

centos安装python3与自带的python2共存方法

2.安装python3

新建python3的目录

[[email protected] ~]$ mkdir myProject

[[email protected] ~]$ cd myProject

[[email protected] myProject]$ mkdir python3

[[email protected] myProject]$ cd python3/

执行下面命令安装python3

[[email protected] python3]$ wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tar.xz

centos安装python3与自带的python2共存方法

上图表示下载完毕

centos安装python3与自带的python2共存方法

[[email protected] python3]$ tar -xvJf  Python-3.6.2.tar.xz

[[email protected] python3]$ cd Python-3.6.2

centos安装python3与自带的python2共存方法

编译:

 

[[email protected] Python-3.6.2]$ ./configure --prefix=/home/hadoop/myProject/python3/

centos安装python3与自带的python2共存方法

出现上图为编译完成

安装:

[[email protected] Python-3.6.2]$ make && make install

centos安装python3与自带的python2共存方法

出现上图说明环境依赖问题:

使用root用户执行下面命令:

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

centos安装python3与自带的python2共存方法

[[email protected] Python-3.6.2]$ cd /home/hadoop/myProject/python3/Python-3.6.2

再次安装

[[email protected] Python-3.6.2]$ make && make install

centos安装python3与自带的python2共存方法

创建软连接

使用root用户执行下面命令:

先修改旧版本

[[email protected] Python-3.6.2]$ mv /usr/bin/python /usr/bin/python.bak

创建python3及pip的软链接

[[email protected] Python-3.6.2]$ ln -s /home/hadoop/myProject/python3/bin/python3 /usr/bin/python3

[[email protected] Python-3.6.2]# ln -s /home/hadoop/myProject/python3/bin/pip3 /usr/bin/pip3

[[email protected] Python-3.6.2]# python3

centos安装python3与自带的python2共存方法

但是我们输出python2发现没效果,是因为如下图所示,在/usr/bin/下面,没有python2的链接。所以我们执行python2.6发现是可以的

centos安装python3与自带的python2共存方法

[[email protected] bin]# python2.6

centos安装python3与自带的python2共存方法

千万不要觉得别扭我们就把python2.6改成python2!!!!(如果执行下面代码会有很多的问题,比如在启动saltstack的时候还要修改/etc/init.d/salt-master里面的源码!!很麻烦,据我推断应该有很多的东西都是使用系统默认的python库的,但是现在还不知道如何解决)

[[email protected] bin]# mv /usr/bin/python2.6 /usr/bin/python2

centos安装python3与自带的python2共存方法

3.修改yum依赖的python

执行yum发现报错

centos安装python3与自带的python2共存方法

是因为执行yum需要python2版本,所以我们还要修改yum的配置,执行:

[[email protected] yum.repos.d]# vi /usr/bin/yum

把python改成python2.6

centos安装python3与自带的python2共存方法

更改后如下图:

centos安装python3与自带的python2共存方法

最后验证yum是否可用:

centos安装python3与自带的python2共存方法

 

相关文章: