欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

CentOS7重装python2、python3、pip以及yum

时间:2023-04-27

没事千万别拿环境开玩笑!

​ ——沃兹基·硕德

轻易不要尝试

轻易不要尝试

轻易不要尝试

由于之前使用的python版本过低,无法使用很多模块的新特性。然而在尝试更新python版本时遇到了很多坑,不仅把原python3更新为新版本后,原yum不能用了,而且pip也无法正常工作。且卸载python3老版本的时候不小心吧python2给卸载了,yum又需要python2。几番尝试之后无果,干脆全部重装算了!

卸载原python、yum

卸载现有python(所有版本及模块)。

rpm -qa|grep python|xargs rpm -ev --allmatches --nodeps ##强制删除已安装程序及其关联 whereis python |xargs rm -frv ##删除所有残余文件 ##xargs,允许你对输出执行其他某些命令 whereis python ##验证删除,返回无结果

卸载现有yum。

rpm -qa|grep yum|xargs rpm -ev --allmatches --nodeps whereis yum |xargs rm -frv

安装python2 安装python2.7.15

使用python.org下载太慢,这里使用淘宝镜像下载。

https://registry.npmmirror.com/-/binary/python/2.7.15/Python-2.7.15.tgz

cd /usr/local/srcwget https://registry.npmmirror.com/-/binary/python/2.7.15/Python-2.7.15.tgztar -zxvf Python-2.7.15.tgzcd Python-2.7.15./configuremake && make install

创建软链接,将python2.7.15版本命名为python2,将python留给python3版本使用。

ln /usr/local/bin/python /usr/local/bin/python2

将涉及/usr/bin/python的设置更新为/usr/bin/python2,毕竟python2.7的软链接已经被改成了python2。

安装pip

查找网上的教程都是通过以下yum命令安装的,然而我却总是显示没有匹配包,我也是挺无奈的。

yum -y install python-pip

干脆就直接使用源码安装算了,反正也不复杂。

# 1.下载python-pip包wget https://pypi.python.org/packages/source/p/pip/pip-1.3.1.tar.gz --no-check-certificate# 2.安装pip之前需要先安装setuptoolswget https://pypi.python.org/packages/2.7/s/setuptools/setuptools-0.6c11-py2.7.egg --no-check-certificatechmod +x setuptools-0.6c11-py2.7.eggsh setuptools-0.6c11-py2.7.egg# 3.安装pipchmod +x pip-1.3.1.tar.gztar xzvf pip-1.3.1.tar.gzcd pip-1.3.1python setup.py install

可以愉快的使用pip了。

安装yum

据说yum的使用需要用到python2,具体我也没有细究,反正至少先安装好python2就行了。

以下链接与CentOS版本相关,具体链接可在网易镜像中依照具体系统查找。

cat /etc/centos-release # 查看系统版本号# CentOS Linux release 7.6.1810 (Core)

下载相关文件

wget http://mirrors.163.com/centos/7/os/x86_64/Packages/python-urlgrabber-3.10-8.el7.noarch.rpmwget http://mirrors.163.com/centos/7/os/x86_64/Packages/python-iniparse-0.4-9.el7.noarch.rpm wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-45.el7.noarch.rpmwget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpmwget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-3.4.3-158.el7.centos.noarch.rpm

按照顺序安装

rpm -ivh python-iniparse-0.4-9.el7.noarch.rpmrpm -ivh python-urlgrabber-3.10-8.el7.noarch.rpmrpm -ivh yum-3.4.3-158.el7.centos.noarch.rpm yum-metadata-parser-1.1.4-10.el7.x86_64.rpm yum-plugin-fastestmirror-1.1.31-45.el7.noarch.rpm

注意:yum和yum-plugin-xxx一定要同时安装,因为他们彼此依赖,先安装谁都会报错。

安装中途很可能会出现依赖错误导致安装失败,如python(abi) = 2.7 is needed by xxx。

该错误则需要安装以下几个包:

python-libs-2.7.5-68.el7.x86_64.rpm

python-2.7.5-68.el7.x86_64.rpm

python-devel-2.7.5-68.el7.x86_64.rpm

注意:在安装时仍然会遇到依赖错误,那么安装提示在网易镜像中查找对应版本文件,使用wget下载后安装即可。

修改yum源

在使用yum安装时出现http404之类的错误,很有可能就是yum源有问题。

# 1.进入系统yum源目录cd /etc/yum.repos.d# 2.备份原来的yum源mkdir bak && mv *.repo bak# 3.下载yum源wget http://mirrors.163.com/.help/CentOS7-base-163.repo# 4.改名成默认repomv CentOS7-base-163.repo CentOS-base.repo# 5.生成缓存,是配置生效yum makecache# 6.验证配置源yum repolist # 查看是否有163的标识# 7.更新yum文件yum update -y

接下来就可以正常使用yum了。

注意:修改时可能遇到/usr/bin/applydeltarpm not installed的情况

缺什么安装什么就完事了!

yum provides '*/applydeltarpm' yum install deltarpm -y

安装python3 安装python3.8

现在使用python开发基本都是使用python3了,自然不能少。python不能装太老的,因为以后可能官方就不支持了,也不能太新,因为还不稳定,资料也不够多,所以综合考虑python3.8就差不多了。

cd /usr/local/srcwget https://registry.npmmirror.com/-/binary/python/3.8.8/Python-3.8.8.tgztar -zxvf Python-3.8.8.tgzcd Python-3.8.8./configuremake && make install

修改python3为默认

安装后通过python3就能使用该版本,不过一般都习惯只键入python,所以在这里创建软链接即可

which python3 # 查看python3位置# /usr/local/bin/python3ln /usr/local/bin/python3 /usr/local/bin/python # 创建软链接python -V # 查看版本# Python 3.8.8

配置pip3

python3.8安装成功后,pip3就已经安装完毕了!键入pip3就能正常使用,如果想将它设为默认的话,可以修改软链接。当然这一步其实可以不配置

which pip # 查看原pip# /usr/local/bin/pipmv /usr/local/bin/pip /usr/local/bin/pip_bak # 备份which pip3 # 查看pip3位置# /usr/local/bin/pip3ln /usr/local/bin/pip3 /usr/local/bin/pip # 创建软链接pip -V 查看当前pip版本pip 20.2.3 from /usr/local/lib/python3.8/site-packages/pip (python 3.8)

完事!还是python3安装最简单。

至此终于把整个重装工作完成了!

网上的资料真是太坑了,要么不详细,要么根本就是直接偷别人的。fo了!

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。