新安装的Centos7 系统默认python版本为2.7
下载Python-3.7.0
wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz
编译安装
tar -xf Python-3.7.0.tgz
cd Python-3.7.0
./configure --with-ssl
make && make install
如果安装过程报错,根据报错可进行相关处理,我遇到的是没有安装zlib 和gcc-c++ 还有libffi-devel
yum安装即可
安装完成,需要更改默认的python版本
默认自带的python位置在”/usr/bin/“目录下
ll /usr/bin/python*
lrwxrwxrwx. 1 root root 7 5月 26 21:18 /usr/bin/python -> python2
lrwxrwxrwx. 1 root root 9 5月 26 21:18 /usr/bin/python2 -> python2.7
检查新安装的python3,默认编译安装的python位置在”/usr/local/bin/“目录下
[root@localhost Python-3.7.0]# ll /usr/local/bin/python*
lrwxrwxrwx. 1 root root 9 6月 16 21:47 /usr/local/bin/python3 -> python3.7
-rwxr-xr-x. 2 root root 13966016 6月 16 21:46 /usr/local/bin/python3.7
lrwxrwxrwx. 1 root root 17 6月 16 21:47 /usr/local/bin/python3.7-config -> python3.7m-config
-rwxr-xr-x. 2 root root 13966016 6月 16 21:46 /usr/local/bin/python3.7m
-rwxr-xr-x. 1 root root 3097 6月 16 21:47 /usr/local/bin/python3.7m-config
lrwxrwxrwx. 1 root root 16 6月 16 21:47 /usr/local/bin/python3-config -> python3.7-config
修改默认的python
删除旧的python的软连接,创建新的python2和python3的软连接
[root@localhost Python-3.7.0]# cd /usr/bin/
[root@localhost bin]# rm -f python2
[root@localhost bin]# mv python python2.6.ori
[root@localhost bin]# ln -s python2.7 python2
[root@localhost bin]# ln -s /usr/local/bin/python3 /usr/bin/python
检查修改后的python版本
[root@localhost bin]# python -V
Python 3.7.0
[root@localhost bin]# python2 -V
Python 2.7.5
[root@localhost bin]# python3 -V
Python 3.7.0
3.后续的软件问题处理
python的默认版本修改为3.x之后,系统对于yum的调用会出问题,所以需要修改下yum的相关配置
[root@localhost bin]# vi /usr/bin/yum
需要检查确认以下配置
由于此时的python已经指向python3,所以要改为明确指向python2
vi /usr/bin/yum
开头修改为(默认为python)
#!/usr/bin/python2
这样,修改后的yum依然可以调用python2.7的python,在使用yum安装软件时就不会报错了
另外就是,CentOS7还有另外一个文件需要修改
vi /usr/libexec/urlgrabber-ext-down
#!/usr/bin/python2
开头修改为#!/usr/bin/python2
安装一个软件试试:[root@localhost bin]# yum -y install vim