前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >yum源配置

yum源配置

作者头像
我的小碗汤
发布2018-08-22 10:46:26
5.1K0
发布2018-08-22 10:46:26
举报
文章被收录于专栏:我的小碗汤我的小碗汤

在配置yum前首先得说说rpm,在redhat和centos linux系统上,rpm作为软件包管理工具,可以方便的安装、查询、卸载软件包。常见命令如下:

代码语言:javascript
复制
#安装:
rpm -ivh jdk-7u25-linux-x64.rpm

#卸载:
rpm -e jdk-7u25-linux-x64.rpm

#升级:
rpm -Uvh jdk-7u25-linux-x64.rpm

#查询软件的安装路径:
rpm -ql yum-3.4.3-118.el7.noarch

#查询所有安装的包:
rpm -qa 

#查询某个文件是哪个rpm包产生:
rpm -qf /var/lib/yum/yumdb

但是在多个包组成的rpm包用rpm命令安装时,其依赖包问题是超级繁琐的。

yum是redhat和centos的软件包管理工具,安装软件包时可以在网上远程仓库或者本地自动下载所有依赖包,解决了rpm的痛点。今天主要学习下远程yum源配置。由于redhat 自带的 yum 源是需要注册收费才能更新下载软件的,如果没有注册就使用,则会报下面的错误:

代码语言:javascript
复制
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.

所以我们需要把yum源修改为centos的源。

查看自带yum:

代码语言:javascript
复制
rpm -qa | grep yum

卸载自带yum:

代码语言:javascript
复制
rpm -qa | grep yum | xargs rpm -e --nodeps

查看系统版本:

代码语言:javascript
复制
cat /etc/redhat-release

下载安装软件包:

代码语言:javascript
复制
#下载链接
http://mirrors.163.com/centos/7/os/x86_64/Packages/

#需要下载以下三个rpm包:
yum-metadata-parser-1.1.4-10.el7.x86_64.rpm  
yum-3.4.3-158.el7.centos.noarch.rpm
yum-plugin-fastestmirror-1.1.31-45.el7.noarch.rpm

执行以下安装命令报错,依赖包的版本不符:

代码语言:javascript
复制
#执行yum安装
rpm -ivh yum*

这里升级python-urlgrabber和rpm包版本:

代码语言:javascript
复制
#升级rpm包到:
rpm-4.11.3-32.el7.x86_64.rpm  
python-urlgrabber-3.10-8.el7.noarch.rpm  

#下载
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/rpm-4.11.3-32.el7.x86_64.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/python-urlgrabber-3.10-8.el7.noarch.rpm

#升级
rpm -Uvh rpm-4.11.3-32.el7.x86_64.rpm --nodeps
rpm -Uvh python-urlgrabber-3.10-8.el7.noarch.rpm --nodeps

然后安装:

新建配置文件:

代码语言:javascript
复制
vim /etc/yum.repos.d/CentOS-Base.repo

加入以下配置:

代码语言:javascript
复制
#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

然后清理缓存:

代码语言:javascript
复制
yum clean all

生成缓存:

代码语言:javascript
复制
yum makecache

测试源:

代码语言:javascript
复制
yum update -y --skip-broken

可以看到已经可以通过yum安装相关软件包更新。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-07-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 进击云原生 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档