由于自学python3,需要在服务器上调试python程序。在centos中,自带有python2,因此需要经常安装python3。但是这里有一个坑,就是centos的yum是用python2写的,如果正常编译安装python3,那么yum就会直接挂了。为了方便以后编译安装python3,不用天天去网上找教程,准备写下这篇文章,供日后参考。

首先连上服务器,看下python版本:

python -V

如图我们可以看到centos下,默认带有python2.7.5:
请输入图片描述

接下来我们开始安装python3。

  • 1 安装python3所需要的组件
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel

请输入图片描述

  • 2 备份现有的python2
cd /usr/bin
mv python python.bak
mv pip pip.bak
  • 3 下载并编译安装python3

这篇文章我们选择最新的稳定版本3.6.5,如有更新可以自行去官网(https://www.python.org/downloads/source/)查找下载地址。

cd ~ && wget https://www.python.org/ftp/python/3.6.5/Python-3.6.5.tar.xz 
tar -xvJf Python-3.6.5.tar.xz
cd Python-3.6.5
指定安装路径
./configure prefix=/usr/local/python3
编译并安装
make && make install

编译安装完成后如图:
请输入图片描述

接下来做一条软连接,将python3指向python,顺便把pip也重新指向:

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

这时候我们执行一下python,看看版本回显信息:

python -V 
python2 -V

如图可以看到,python命令对应了python3.6.5,python2命令对应了python2.7.5。
请输入图片描述

  • 4 修改yum配置

装完了python3之后,我们要修一下yum了,不然以后都没法装软件和环境了。

vim /usr/bin/yum

如图,按insert,把头部的 #! /usr/bin/python 修改为 #! /usr/bin/python2
请输入图片描述
修改完成后按esc,然后输入 :wq 保存退出

同样修改一下 urlgrabber-ext-down 文件,把头部的 #! /usr/bin/python 修改为 #! /usr/bin/python2

vim /usr/libexec/urlgrabber-ext-down

请输入图片描述
改完之后再试一下yum,已经恢复正常:
请输入图片描述

Last modification:March 10th, 2019 at 10:19 pm
正在沿街乞讨中……