升级python2.7至python3.7
最近在centos7下执行命令时,出现以下提示:
DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7. More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
Looking in indexes: http://mirrors.aliyun.com/pypi/simple/
大概说的这个意思:
弃用:Python 2.7将在2020年1月1日结束它的生命。请升级你的Python,因为在那个日期之后Python 2.7将不会被维护。pip的未来版本将取消对Python 2.7的支持。关于pip中Python 2支持的更多细节,可以在https://pip.pypa.io/en/latest/development/relee-process/ # python2 -support找到查看索引:http://mirrors.aliyun.com/pypi/simple/
centos7版本默认安装的是python2.7。于是,升级开始了。
注意下,应为很多的依赖包基本命令什么的都是基于python2的,比如yum。所以旧版本不要删了,新旧可以共存。
1.安装编译环境包(防止出现安装错误)
1 yum install gcc-c++ gcc make cmake zlib-devel bzip2-devel openssl-devel ncurse-devel libffi-devel -y
2.在线下载Python3.7源码包
1 #进入tmp目录 2 cd /tmp 3 #下载python3.7.3 4 wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tar.xz
3.解压并配置
1 #解压 2 tar Jxvf Python-3.7.3.tar.xz 3 #进入python3.7.3目录 4 cd Python-3.7.3 5 #创建目录 6 mkdir -p /usr/local/python3 7 #配置(指定安装目录) 8 ./configure --prefix=/usr/local/python3 --enable-optimizations
4.编译及安装
1 make && make install
5.更换系统默认Python版本
1).备份原系统旧版本python
1 mv /usr/bin/python /usr/bin/python.bak 2 mkdir /usr/bin/pip 3 mv /usr/bin/pip /usr/bin/pip.bak
2).配置环境变量:创建新版本Python和pip的软链接
1 ln -s /usr/local/python3/bin/python3.7 /usr/bin/python 2 ln -s /usr/local/python3/bin/pip3 /usr/bin/pip
3).查看python版本
1 python -V
6.修改yum功能
因为yum的功能依赖Pyhon2,现在更改默认Python版本后会导致yum无法正常工作,所以进行以下3处修复
第1处:
1 vim /usr/bin/yum
把最顶部的
改成:#! /usr/bin/python2.7
第2处:
1 vim /usr/libexec/urlgrabber-ext-down
把最顶部的
改成:#! /usr/bin/python2.7
/usr/sbin/firewalld /usr/bin/firewall-cmd 这两个也改下