背景:之前想著練習一下python3,故把python2及其軟連接文件都刪除了,殊不知yum會依賴python2,導致yum用不了。網上試了好多方法都不行(絕大部分都說把/usr/bin/yum的第一行指向原來的python2.6,但是我的2.6已經被卸載了,2.6的軟連接什么都沒有了。。。),經過無數次實驗,終于跌跌撞撞的把yum修復好了,python也還原到了python2。
解決辦法:
其實是很暴力的,那就是直接把yum和python都統統刪除:
步驟1:卸載python
rpm -qa|greppython|xargsrpm -e --allmatches --nodeps
whereispython|xargsrm-fr
然后用whereis python檢驗,如果結果為空,就表示刪除干凈。
步驟2:卸載yum
rpm -qa|grepyum|xargsrpm -e --allmatches --nodepsrm-rf /etc/yum.repos.d/*
whereis yum|xargs rm -fr
同樣檢查一下。
步驟3:下載對應版本的python rpm包和yum rpm包
新建/usr/local/src/python路徑,存放后面下載的python和yum的rpm安裝包。
由于我的系統是7.2.2511,但是上面顯示只能用7的,所以我的鏈接為:
首先安裝python,python 的rpm安裝包:
wget? http://mirrors.163.com/centos/7/os/x86_64/Packages/python-2.7.5-48.el7.x86_64.rpm
wget? 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/python-pycurl-7.19.0-19.el7.x86_64.rpm
wget? http://mirrors.163.com/centos/7/os/x86_64/Packages/python-devel-2.7.5-48.el7.x86_64.rpm
wget? http://mirrors.163.com/centos/7/os/x86_64/Packages/python-libs-2.7.5-48.el7.x86_64.rpm
wget? http://mirrors.163.com/centos/7/os/x86_64/Packages/python-urlgrabber-3.10-8.el7.noarch.rpm
wget? http://mirrors.163.com/centos/7/os/x86_64/Packages/rpm-python-4.11.3-21.el7.x86_64.rpm
使用rpm -ivh python-*? rpm-python-* 命令來安裝python,如果提示依賴問題:
則在rpm -ivh python-*? rpm-python-* 后面加上 --force --nodeps來忽略依賴關系。
然后安裝yum,yum的rpm安裝包為:
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-3.4.3-150.el7.centos.noarch.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-40.el7.noarch.rpm
同樣使用rpm -ivhyum-* 命令來安裝yum:
這樣,yum和python就安裝好了,yum親測可用,python可以看到是2.7.5版本:
最后用yum search 一下發現好多東西都沒有,所以
步驟4:更新yum源。
[1] 首先備份/etc/yum.repos.d/CentOS-Base.repo
mv/etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
[2] 進入yum源配置文件所在文件夾
[root@localhost yum.repos.d]# cd /etc/yum.repos.d/
[3] 下載163的yum源配置文件,放入/etc/yum.repos.d/(操作前請做好相應備份)
[root@localhost yum.repos.d]#wgethttp://mirrors.163.com/.help/CentOS6-Base-163.repo
[4] 運行yum makecache生成緩存
[root@localhost yum.repos.d]# yum makecache
[5] 更新系統
[root@localhost yum.repos.d]# yum -y update
[6] 安裝vim編輯器
[root@localhost ~]# yum -yinstallvim*