linux 重裝 yum 及更換yum源 -- 解決國內各版本 yum 源失效的問題


公司的服務器 yum 源有問題  卸載之后想重新安裝一個,結果發現國內好多鏡像網站一些老版本 都失效了  找了兩天終於找到了  特貼出來做個記錄 

http://vault.centos.org

 

然后我在 centos 使用yum安裝git 的時候 爆出了

Loaded plugins: fastestmirror, security
Determining fastest mirrors
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
Eg. Invalid release/
removing mirrorlist with no valid mirrors: /var/cache/yum/base/mirrorlist.txt
Error: Cannot find a valid baseurl for repo: base

的錯誤  ,之后找了好多解決方法 , 修改DNS之類的 都嘗試過了 ,還是沒有解決問題 , 沒辦法只好卸載 yum 重新安裝,發現問題依舊,就是在此時發現了好多  yum 源失效的問題 , 轉念一想 ,是不是服務器的 yum 源失效了 , 抱着試試的心態更換了 yum 源 ,終於解決了問題

一: 重新安裝 yum

先查看 yum 的依賴包:#rpm –qa | grep yum     ps:重要 一定要先對依賴包做個記錄 不然你直接刪了 都不知道該安裝些什么東西 最好截張圖

卸載相關依賴包:#rpm –e –nodeps yum

這兩句可合並為一句執行 : #rpm -qa | grep yum |xargs rpm -e --nodeps

 

去 http://vault.centos.org 下載相應的 centos 版本 的 python  和 python-iniparse 依賴包  , #cat  /etc/issue 可以 查看當前centos版本

我的是centos 5.11 版本 ,對應文件在 http://vault.centos.org/5.11/os/x86_64/ 目錄下

 

安裝 , #rpm –ivh  python-***(對應版本)   python-iniparse-***

在這兒我還報了個錯 

[root@localhost my_temp]# rpm -ivh python-2.4.3-46.el5.x86_64.rpm  python-iniparse-0.2.3-4.el5.noarch.rpm 
error: Failed dependencies:
    python-libs-x86_64 = 2.4.3-46.el5 is needed by python-2.4.3-46.el5.x86_64

很明顯是還缺東西  沒事 找到對應 版本 一起安裝就可以了

若安裝失敗可重新輸入此命令並加參數--nodeps –force

 

然后在把之前 列出的 yum 依賴包 下載下來並安裝 最好一起安裝 可解決報的依賴問題

我這兒只是例子  以自己的版本為准

[root@localhost my_temp]# rpm -ivh yum-fastestmirror-1.1.16-21.el5.centos.noarch.rpm  yum-security-1.1.16-21.el5.centos.noarch.rpm  yum-3.2.22-40.el5.centos.noarch.rpm  yum-metadata-parser-1.1.2-4.el5.x86_64.rpm  yum-updatesd-0.9-6.el5_10.noarch.rpm 
Preparing...                ########################################### [100%]
   1:yum-metadata-parser    ########################################### [ 20%]
   2:yum                    ########################################### [ 40%]
   3:yum-fastestmirror      ########################################### [ 60%]
   4:yum-security           ########################################### [ 80%]
   5:yum-updatesd           ########################################### [100%]

OK  大功告成,之后 清理yum緩存

#yum clean all

在將服務器軟件包信息緩存至本地

#yum makecache

 

到此如果  yum 可以使用的話 無視下面的就好

 

二 : 更換 yum 源

進入 yum 配置文件目錄    #cd  /etc/yum.repos.d/   

備份配置文件    #mv  CentOS-Base.repo   CentOS-Base.repo.bak

下載 163 的配置文件  #wget http://mirrors.163.com/.help/CentOS6-Base-163.repo

更名  #mv CentOS6-Base-163.repo   CentOS-Base.repo

到重點了  由於 163源 遷移的問題 所以 這個下載下來的源是同樣無法使用的 只能自己手動修改

未改動過的 163 源是這樣子的 

[base]
name=CentOS-$releasever - Base - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/os/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#released updates 
[updates]
name=CentOS-$releasever - Updates - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/updates/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#packages used/produced in the build but not released
[addons]
name=CentOS-$releasever - Addons - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/addons/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/extras/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/centosplus/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib - 163.com
baseurl=http://mirrors.163.com/centos/$releasever/contrib/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

自己把他的路徑根據源網站作了修改

改動之后是這樣的 

[base]
name=CentOS-$releasever - Base - 163.com
baseurl=http://vault.centos.org/5.11/os/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
gpgcheck=1
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-5

#released updates 
[updates]
name=CentOS-$releasever - Updates - 163.com
baseurl=http://vault.centos.org/5.11/updates/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
gpgcheck=1
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-5

#packages used/produced in the build but not released
[addons]
name=CentOS-$releasever - Addons - 163.com
baseurl=http://vault.centos.org/5.11/addons/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons
gpgcheck=1
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras - 163.com
baseurl=http://vault.centos.org/5.11/extras/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
gpgcheck=1
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-5

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus - 163.com
baseurl=http://vault.centos.org/5.11/centosplus/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus
gpgcheck=1
enabled=0
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-5

#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib - 163.com
baseurl=http://vault.centos.org/5.11/contrib/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib
gpgcheck=1
enabled=0
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-5
                                         

說一說幾個主要修改的點

首先是網址 改為了 http://vault.centos.org   然后刪除了 centos  把  $releasever  這個變量自己手動改為了 5.11(對應的版本號)  這一步自己琢磨 我是改完之后 他還報錯 發現是版本號的問題 給我顯示的 5 而我是 5.11 的版本,改完之后最好自己先去訪問一下有沒有對應的文件 以防出錯  

#yum clean all

#yum makecache

測試安裝了 git  完美   ,一點錯都沒報  爽!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM