CentOS7.5安装Python3

CentOS7.5安装Python3.
CentOS7.5安装Python3.

最近折腾了CentOS7,当前最新的CentOS7.5默认安装的python2.7要升级到python3所以记录下自己走过的坑。(需要添加epel源,这里就不啰嗦了!)

yum install gcc dialog augeas-libs openssl openssl-devel libffi-devel redhat-rpm-config ca-certificates

下载python3的源码,这里我使用的是python3.6.7

可以从下面的地址下载:

wget https://www.python.org/ftp/python/3.6.7/Python-3.6.7.tgztar xzf ./Python-3.6.7.tgzcd ./Python-3.6.7./configure --prefix=/usr

这里省略N多的信息。。。。。然后开始编译和安装

make && make install -j2

故事到这里还一帆风顺,此时进入/usr/bin目录下就可以看到刚刚安装好的python3

[root@host ~]# ls /usr/bin |grep pythonpythonpython2python2.7python3python3.6python3.6-configpython3.6mpython3.6m-configpython3-config

因为笔者是准备使用fail2ban 0.10.3.1,需要python3的支持,所以将默认的python删掉,然后将python3软连接为python(被删掉的python实际是python2.7的软连接)

ln -s /usr/bin/python3.6 /usr/bin/python

至此我们的python3已经安装完成,查看如下:

[root@host ~]# pythonPython 3.6.7 (default, Nov 15 2018, 15:01:50)[GCC 4.8.5 20150623 (Red Hat 4.8.5-28)] on linuxType "help", "copyright", "credits" or "license" for more information.

哈哈,一切看来如此简单,然后笔者抱着开心的态度执行了一下yum update…..,然后诡异的事情出现了。

[root@host ~]# yum update  File "/bin/yum", line 30    except KeyboardInterrupt, e:                            ^SyntaxError: invalid syntax

我去。。。yum挂了,笔者当时第一反应,我是不是该重装一下?File “/bin/yum”, line 30是什么鬼?我不就安装了个python3吗?经过一番搜索,最终得到答案因为CentOS7的yum使用的是python2,只需要在yum上指定对应的版本即可
1. 修改/usr/bin/yum

nano /usr/bin/yum

在第一行,把下面这段

#!/usr/bin/python

修改为:

#!/usr/bin/python2

2. 修改/usr/libexec/urlgrabber-ext-down
替换这段

#! /usr/bin/python

为下面这段:

#! /usr/bin/python2

3. 修改nano /usr/bin/yum-config-manager
修改这段:

#!/usr/bin/python -tt

为下面这段:

#!/usr/bin/python2 -tt

在执行yum update,哈哈一切恢复了!

About 歇歇脚|Java|Linux 1036 Articles
歇歇脚元老