由于自学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 备份现有的python2cd /usr/bin
mv python python.bak
mv pip pip.bak3 下载并编译安装python3
这篇文章我们选择最新的稳定版本3.6.5,如有更新可以自行去官网(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,已经恢复正常: