centos7(redhat7) 安装Python3.x

1.查看是否已经安装Python
Centos7默认安装了python2.7.5 因为一些命令要用它比如yum 它使用的是python2.7.5。
使用python -V命令查看一下是否安装Python:

image.png

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

image.png

进入到bin目录:

centos7(redhat7) 安装Python3.x_第1张图片
image.png

可以看到可执行文件python指向python2,python2又指向python2.7也就是说Python命令执行的系统预装的Python2.7。
要安装Python的其他版本先执行mv python python.bak命令备份python文件。

image.png

2.安装新版本的Python
下载Python新版本 https://www.python.org/downloads/source/
下载tgz包就可以了。其实下面的2个包其一都可以使用
Python-3.5.1.tgz (这个不是编译过的东西,不能解压之后直接使用)
Python-3.5.1.tar.xz (这个是pthon的源码)
讲下载的tgz包上传到Linux服务器。
或者执行wget命令直接下载到服务器:wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz
解压缩:tar -zxvf Python-3.5.1.tgz
加压缩之后该目录下出现Python-3.5.1文件夹,进入到文件夹下执行编译安装。

image.png

执行 ./configure --prefix=/usr/local/python/python3 命令。./configure命令执行完毕之后创建一个文件creating Makefile,供下面的make命令使用 执行make install之后就会把程序安装到我们指定的目录中去。
Configure是一个可执行脚本,它有很多选项,在待安装的源码路径下使用命令./configure –help输出详细的选项列表。
其中--prefix选项是配置安装的路径,如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放
在/usr/local/lib,配置文件默认放在/usr/local/etc,其它的资源文件放在/usr /local/share,比较凌乱。
如果配置--prefix,如:
./configure --prefix=/usr/local/test
可以把所有资源文件放在/usr/local/test的路径中,不会杂乱。
用了—prefix选项的另一个好处是卸载软件或移植软件。当某个安装的软件不再需要时,只须简单的删除该安装目录,
就可以把软件卸载得干干净净;移植软件只需拷贝整个目录到另外一个机器即可(相同的操作系统)。
当然要卸载程序,也可以在原来的make目录下用一次make uninstall,但前提是make文件指定过uninstall。
然后执行make、make install命令。

注意:执行make的时候可能会出现zipimport.ZipImportError: can't decompress data的问题
解决办法:安装相关依赖包 yum -y install zlib*

安装成功之后进入到python3文件夹可以看到Python的可执行文件目录、lib目录等相关目录。

centos7(redhat7) 安装Python3.x_第2张图片
image.png

执行ln -s /usr/local/python/python3/bin/python3 /usr/bin/python命令创建软连接。执行python -V查看Python是否安装成功。

image.png

安装成功:

centos7(redhat7) 安装Python3.x_第3张图片
image.png

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

同时也要修改/usr/libexec/urlgrabber-ext-down中的/usr/bin/python,为/usr/bin/python2.7,完成。

你可能感兴趣的:(centos7(redhat7) 安装Python3.x)