CentOS7.2 多个python版本共存

1.查看是否已经安装Python

CentOS 7.2 默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的是python2.7.5。

使用python -V命令查看一下是否安装Python:

然后查看一下Python可执行文件的位置:

进入到bin目录:

可以看到可执行文件python指向python2,python2又指向python2.7也就是说Python命令执行的系统预装的Python2.7。

要安装Python的其他版本先执行mv python python.bak命令备份python文件

2、安装python3.5.2版本

安装相关包

(1)# yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

下载 Python 3.5.2源码包

(1)# wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tar.xz

(2)# tar xf Python-3.5.2.tar.xz -C /usr/local/src/ (yum -y install xz  #若失败,重建yum缓存.yum clean all ,yum makecache)
(3)# cd /usr/local/src/Python-3.5.2

(4)#./configure --prefix=/usr/local/python3

(5)#make && make install

//从 Python 3.4 开始就已经自带了 pip 和 easy_install(setuptools 包带的命令) 包管理命令,你可以在 /usr/local/python3/bin/ 目录下看到,查看一下已经安装的扩展包:

(6)#/usr/local/python3/bin/pip3 list
pip (8.1.1)

setuptools (20.10.1)

You are using pip version 8.1.1, however version 8.1.2 is available.

You should consider upgrading via the 'pip install --upgrade pip' command.

 // 更新pip

(7)#/usr/local/python3/bin/pip3 install --upgrade pip

(8)# /usr/local/python3/bin/pip3 list

pip (8.1.2)

setuptools (20.10.1)

//查看是否安装成功

(9)创建软连接。

```

 

ln -s /usr/local/python3/bin/python3 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

 

```

执行python -V查看Python是否安装成功。

# python -V

Python 3.5.2

//安装完成。

3、修改yum配置文件

因为yum使用python2,因此替换为python3后可能无法正常工作,继续使用这个python2.7.5,因此需要修改yum相关配置文件。

(1)vi /usr/bin/yum

把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.7保存退出即可。

因为yum使用python2,因此替换为python3后可能无法正常工作,继续使用这个python2.7.5因此修改yum配置文件(vi /usr/bin/yum)。把文件头部的#!/usr/bin/python改成#!/usr/bin/python2.7保存退出即可

(2) vi /usr/libexec/urlgrabber-ext-down

第一行改为#!/usr/bin/python2.7

注意:若只修改第一个,还是无法使用yum,需要这2个文件都修改。

只修改一个不修改第二个,报错如下:

#yum repolist
已加载插件:fastestmirror
Determining fastest mirrors
 * base: mirrors.yun-idc.com
 * extras: mirrors.yun-idc.com
 * updates: mirrors.yun-idc.com
  File "/usr/libexec/urlgrabber-ext-down", line 28
    except OSError, e:
                  ^
SyntaxError: invalid syntax
  File "/usr/libexec/urlgrabber-ext-down", line 28
    except OSError, e:
                  ^
SyntaxError: invalid syntax
  File "/usr/libexec/urlgrabber-ext-down", line 28
    except OSError, e:
                  ^
SyntaxError: invalid syntax

由于用户取消而退出

4、检测多版本

 

posted @ 2016-10-21 13:45  三度  阅读(6906)  评论(0编辑  收藏