yum报错 No module named yum
解决方案
1、删除损坏的python、yum的文件
2、下载centos版本对应的python、yum包进行强制安装。
具体步骤
删除python:
rpm -qa|grep python|xargs rpm -ev --allmatches --nodeps
whereis python |xargs rm -frv
验证python删除是否成功,返回为无结果即可
whereis python
删除yum
rpm -qa|grep yum|xargs rpm -ev --allmatches --nodeps
删除残余yum文件
whereis yum |xargs rm -frv
查看系统信息
cat /etc/redhat-release
7.8.2003为我自己的centos版本,下载的包的版本应与系统版本号对应的一致。
创建目录python和yum用以存放rpm包:
$ mkdir /usr/local/src/python
$ mkdir /usr/local/src/yum
下载python的rpm包:
$ cd /usr/local/src/python
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/python-2.7.5-89.el7.x86_64.rpm
wget https://rpmfind.net/linux/centos/7.9.2009/os/x86_64/Packages/python-iniparse-0.4-9.el7.noarch.rpm
wget http://vault.centos.org/7.9.2009/os/Source/SPackages/python-pycurl-7.19.0-19.el7.src.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/python-devel-2.7.5-89.el7.x86_64.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/python-libs-2.7.5-89.el7.x86_64.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/python-urlgrabber-3.10-10.el7.noarch.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/rpm-python-4.11.3-45.el7.x86_64.rpm
下载yum的rpm包:
$ cd /usr/local/src/yum
- 1
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/yum-3.4.3-168.el7.centos.noarch.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-54.el7_8.noarch.rpm
安装python以及yum的rpm包
安装python:
$ cd /usr/local/src/python
$ rpm -ivh python-* rpm-python-* --nodeps --force
–nodeps --force为不考虑依赖包,强制安装。
安装yum:
$ cd /usr/local/src/yum
$ rpm -ivh yum-*
如果遇到以下问题
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
Error downloading packages: deltarpm-3.6-3.el7.x86_64
则需要修改以下两个位置为刚安装的python版本
vi /usr/bin/yum
vi /usr/libexec/urlgrabber-ext-down