CentOS 7 预设的 python 版本是 python2.7.5 。因为 yum 依赖于预设的 python 版本的缘由,所以要先保留预设版本,并修改 yum 档案头部后,才能开始安装更新 python2 和 python3 两个最新版本。(python2 和 python3 共存)
一. 保留预设 python 版本 2.7.5,并修改 yum 头部,保持 yum 对预设版本 python2.7.5 的依赖
1.su root # 获取 root 许可权
2.mv /usr/bin/python2.7 /usr/bin/python2.7.5 # 保留预设版本 python 为 python2.7.5
ln -s /usr/bin/python2.7.5 /usr/local/bin/python2.7.5 # 建立软连线
3.ll /usr/bin/yum* # 检视/usr/bin/目录下所有 yum 档案(7 个)头部
4.vi /usr/bin/yum* # 修改/usr/bin/目录下所有 yum 档案(7 个)头部
#!/usr/bin/python —> #!/usr/bin/python2.7.5
5.vi /usr/libexec/urlgrabber-ext-down # 修改/usr/libexec/目录下 urlgrabber-ext-down 头部
#!/usr/bin/python —> #!/usr/bin/python2.7.5
二. 安装最新版 python2.7.13 和 python3.6.2(python2 和 python3 共存,修改后预设版本为 python3.6.2)
准备工作:
1. 安装 wget 命令(可以线上下载安装包的命令)
yum -y install wget
2. 准备编译环境
yum groupinstall ‘Development Tools’
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel
3. 下载并安装最新版本的 python2 和 python3 的 tgz 压缩档案
https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz
https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz
开始安装:
1. 进入下载目录:
cd /usr/local/src
2. 下载并安装最新版本 python2:
wget https://www.python.org/ftp/python/2.7.13/Python-2.7.13.tgz
tar zxvf Python-2.7.13.tgz
cd Python-2.7.13
./configure
make all
make install
make clean
make distclean
rm -rf /usr/bin/python
rm -rf /usr/bin/python2
rm -rf /usr/bin/python2.7
ln -s /usr/local/bin/python2.7 /usr/bin/python
ln -s /usr/local/bin/python2.7 /usr/bin/python2
ln -s /usr/local/bin/python2.7 /usr/bin/python2.7
/usr/bin/python -V
/usr/bin/python2 -V
/usr/bin/python2.7 -V
rm -rf /usr/local/bin/python
rm -rf /usr/local/bin/python2
ln -s /usr/local/bin/python2.7 /usr/local/bin/python
ln -s /usr/local/bin/python2.7 /usr/local/bin/python2
python -V
python2 -V
python2.7 -V
3. 下载并安装最新版本 python3:
wget https://www.python.org/ftp/python/3.6.2/Python-3.6.2.tgz
tar zxvf Python-3.6.2.tgz
cd Python-3.6.2
./configure
make all
make install
make clean
make distclean
rm -rf /usr/bin/python
rm -rf /usr/bin/python3
rm -rf /usr/bin/python3.6
ln -s /usr/local/bin/python3.6 /usr/bin/python
ln -s /usr/local/bin/python3.6 /usr/bin/python3
ln -s /usr/local/bin/python3.6 /usr/bin/python3.6
/usr/bin/python -V
/usr/bin/python3 -V
/usr/bin/python3.6 -V
rm -rf /usr/local/bin/python
rm -rf /usr/local/bin/python3
ln -s /usr/local/bin/python3.6 /usr/local/bin/python
ln -s /usr/local/bin/python3.6 /usr/local/bin/python3
python -V
python3 -V
python3.6 -V