Centos7——yum與python重裝問題及解決方法

在centos系統下yum命令出錯,可能我們就要重新安裝,當python的版本升級或安裝了多個python版本時,就會導致No module named yum錯誤。一般的解決方法都是全部刪除python和yum,然後進行重裝。安裝過程有可能會出現python(abi) is needed等問題。

下載需要的資源:
安裝包下載:http://www.rpmfind.net/
網易yum資源安裝包:http://mirrors.163.com/centos/7/atomic/x86_64/Packages/
centos資源安裝包:http://mirrors.aliyun.com/centos/
python資源安裝包:https://centos.pkgs.org/

根據自己要系統和要求進行下載

使用的環境
Centos7.4
Python2.7.5

第一步:卸載python和卸載yum
卸載python 方法一:

rpm -qa|grep python|xargs rpm -e --allmatches --nodeps
whereis python|xargs rm -fr

卸載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 -e --allmatches --nodeps
whereis yum|xargs rm -fr

卸載yum 方法二:

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

第二步下載安裝包:
下載Python相關庫和依賴關係安裝包:

wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/python-iniparse-0.4-9.el7.noarch.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/rpm-python-4.11.3-40.el7.x86_64.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/python-urlgrabber-3.10-9.el7.noarch.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/python-pycurl-7.19.0-19.el7.x86_64.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/dbus-python-devel-1.1.1-9.el7.x86_64.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/python-libs-2.7.5-86.el7.x86_64.rpm
wget http://mirror.centos.org/centos/7/os/x86_64/Packages/python-2.7.5-86.el7.x86_64.rpm

下載yum安裝包:

wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-52.el7.noarch.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/yum-3.4.3-163.el7.centos.noarch.rpm

首要執行: rpm -ivh python-* rpm-python-*
沒有安裝錯誤進行yum安裝
執行:rpm -ivh yum-*

如果不行進行配置Python,再進行安裝
下載Python安裝包:

wget https://www.python.org/ftp/python/2.7.5/Python-2.7.5.tgz

編譯:

tar zxvf Python-2.7.5.tgz
cd Python-2.7.5
./configure
make && make install

然後做下軟連接

ln -sf /usr/local/bin/python /usr/bin/python

查看python版本 Python -V

最後輸入命令檢測yum是否安裝成功
沒有錯誤安裝完成

查閱問題處理

##問題一
error: Failed dependencies:
	rpm = 4.11.3-40.el7 is needed by rpm-libs-4.11.3-40.el7.x86_64
##修復處理-下載包
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/rpm-4.11.3-40.el7.x86_64.rpm
##無視重新安裝
rpm -Uvh rpm-4.11.3-40.el7.x86_64.rpm --nodeps --force

############################
##問題二
required to run yum. The error leading to this problem was:
   /usr/lib64/python2.7/site-packages/rpm/_rpm.so: undefined symbol: rpmtsAddReinstallElement
##修復處理-下載包
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/rpm-sign-4.11.3-40.el7.x86_64.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/rpm-libs-4.11.3-40.el7.x86_64.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/rpm-build-libs-4.11.3-40.el7.x86_64.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/rpm-build-4.11.3-40.el7.x86_64.rpm
wget http://mirrors.aliyun.com/centos/7/os/x86_64/Packages/rpm-4.11.3-40.el7.x86_64.rpm
##無視重新安裝
rpm -Uvh --replacepkgs *.rpm --nodeps --force

別的方法:
https://www.cnblogs.com/xdjun/p/11770418.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章