redhat系統安裝好盡管默認帶有yum,但是redhat的更新包只對注冊用戶有效(收費)。所以需要更換yum源。
基本的流程就是:
1.刪除redhat7.0系統自帶的yum軟件包;
2.自行下載所需要的軟件包;
3.根據依賴項安裝;
4.新建repo配置文件。
一般來說,之后就可以正常使用了。可能還會遇到一些依賴項的問題,后面會提到。
流程
1、查看自帶的yum軟件包
| [root@192 ~]# rpm -qa | grep yum yum-utils-1.1.31-24.el7.noarch yum-langpacks-0.4.2-3.el7.noarch yum-metadata-parser-1.1.4-10.el7.x86_64 yum-rhn-plugin-2.0.1-4.el7.noarch PackageKit-yum-0.8.9-11.el7.x86_64 yum-3.4.3-117.el7.noarch |
這下面列出來的軟件包,要記住一下,后面要根據其來搜索rpm包來安裝新版本。比如”yum-utils”、”yum-langpacks”等等。
2、卸載這些安裝包
[root@linuxprobe ~]# rpm -e yum-3.4.3-118.el7.noarch --nodeps [root@linuxprobe ~]# rpm -e yum-utils-1.1.31-24.el7.noarch --nodeps [root@linuxprobe ~]# rpm -e yum-rhn-plugin-2.0.1-4.el7.noarch --nodeps [root@linuxprobe ~]# rpm -e yum-metadata-parser-1.1.4-10.el7.x86_64 --nodeps [root@linuxprobe ~]# rpm -e yum-langpacks-0.4.2-3.el7.noarch --nodeps [root@linuxprobe ~]# rpm -e PackageKit-yum-0.8.9-11.el7.x86_64 --nodeps |
3、保證上網正常
|
4、進入以下網站下載對應的rpm包
阿里雲網絡源地址:https://mirrors.aliyun.com/centos/7/os/x86_64/Packages/
網易163網絡源地址:http://mirrors.163.com/
CentOS網絡源地址:http://centos.ustc.edu.cn/centos/
使用CTRL+F輸入關鍵字查找對應的安裝包即可。
5、找到安裝包后下載下來
由於輸出結果較多,故省略,下面是輸入指令:
| wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-3.4.3-158.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-utils-1.1.31-45.el7.noarch.rpm wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-updateonboot-1.1.31-45.el7.noarch.rpm wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-45.el7.noarch.rpm |
6、安裝
輸入指令rpm -ivh yum-*,遇到報錯,依賴項問題。
| [root@192 ~]# rpm -ivh yum-* 警告:yum-3.4.3-161.el7.centos.noarch.rpm: 頭V3 RSA/SHA256 Signature, 密鑰 ID f4 a80eb5: NOKEY 錯誤:依賴檢測失敗: python-urlgrabber >= 3.10-8 被 yum-3.4.3-161.el7.centos.noarch 需要 rpm >= 0:4.11.3-22 被 yum-3.4.3-161.el7.centos.noarch 需要 yum-plugin-fastestmirror 被 yum-3.4.3-161.el7.centos.noarch 需要 |
另外再回去找安裝包下載下來:
|
輸入指令更新rpm:
| rpm -Uvh yum-plugin-fastestmirror-1.1.31-50.el7.noarch.rpm |
小技巧: 查找需要依賴的安裝包,可以在網站里搜索關鍵字,這樣最省時最快!
再次運行rpm -ivh yum-*
| [root@192 ~]# rpm -ivh yum-* 警告:yum-3.4.3-161.el7.centos.noarch.rpm: 頭V3 RSA/SHA256 Signature, 密鑰 ID f4 a80eb5: NOKEY 警告:軟件包 yum-3.4.3-161.el7.centos.noarch 已被加入,跳過 yum-3.4.3-161.el7.ce ntos.noarch 准備中... ################################# [100%] 正在升級/安裝... 1:yum-metadata-parser-1.1.4-10.el7 ################################# [ 17%] 2:yum-plugin-fastestmirror-1.1.31-5################################# [ 33%] 3:yum-3.4.3-161.el7.centos ################################# [ 50%] 4:yum-langpacks-0.4.2-7.el7 ################################# [ 67%] 5:yum-rhn-plugin-2.0.1-10.el7 ################################# [ 83%] 6:yum-utils-1.1.31-50.el7 ################################# [100%] |
7、新建repo配置文件
創建repo文件:
|
輸入以下內容:
| #CentOS-Base.repo # # The mirror system uses the connecting IP address of the client and the # update status of each mirror to pick mirrors that are updated to and # geographically close to the client. You should use this for CentOS updates # unless you are manually picking other mirrors. # # If the mirrorlist= does not work for you, as a fall back you can try the # remarked out baseurl= line instead. # # [base] name=CentOS-$7 - Base - 163.com #mirrorlist=http://mirrorlist.centos.org/?release=$7&arch=$basearch&repo=os baseurl=http://mirrors.163.com/centos/7/os/$basearch/ gpgcheck=1 gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7 #released updates [updates] name=CentOS-$7 - Updates - 163.com #mirrorlist=http://mirrorlist.centos.org/?release=$7&arch=$basearch&repo=updates baseurl=http://mirrors.163.com/centos/7/updates/$basearch/ gpgcheck=1 gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7 #additional packages that may be useful [extras] name=CentOS-$7 - Extras - 163.com #mirrorlist=http://mirrorlist.centos.org/?release=$7&arch=$basearch&repo=extras baseurl=http://mirrors.163.com/centos/7/extras/$basearch/ gpgcheck=1 gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7 #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$7 - Plus - 163.com baseurl=http://mirrors.163.com/centos/7/centosplus/$basearch/ gpgcheck=1 enabled=0 gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7 |
8、測試yum是否配置成功
隨便下一個軟件看看:
| [root@192 ~]# yum -y install tree 已加載插件:fastestmirror, langpacks, product-id, subscription-mana ger This system is not registered to Red Hat Subscription Management. Y ou can use subscription-manager to register. Determining fastest mirrors base | 3.6 kB 00:00 extras | 3.4 kB 00:00 updates | 3.4 kB 00:00 (1/4): extras/x86_64/primary_db | 156 kB 00:02 (2/4): base/x86_64/group_gz | 166 kB 00:02 (3/4): updates/x86_64/primary_db | 1.3 MB 00:03 (4/4): base/x86_64/primary_db | 6.0 MB 00:03 正在解決依賴關系 --> 正在檢查事務 ---> 軟件包 tree.x86_64.0.1.6.0-10.el7 將被 安裝 --> 解決依賴關系完成 |

