YUM仓库服务笔记:配置YUM

rpm包管理命令:YUM

借助于YUM软件仓库,可以完成安装、卸载、自动升级rpm软件包等任务,能够自动查找并解决rpm包之间的依赖关系,而无需管理员逐个、手工地去安装每一个rpm包,使管理员在维度护在量linux服务器时更加轻松自如。特别是在拥有大量linux主机的本地网络中,构建一台源服务器可以大大缓解软件安装、升级等对于internet的依赖。

要成功使用YUM机制来更新系统和软件,需要有一个包含各种rpm安装文件的软件仓库,提供软件库的服务器也称为“源”服务器。在客户机中只要正确指定软件仓库的地址等信息,就可以通过对应的“源”服务器来安装或更新软件了。

YUM软件仓库即可以作为本地YUM源,即为本地主机提供软件源服务;也可以措助FTP或HTTP协议来进行发布,这样可以面向网络中的所有客户机提供软件源服务。为了便于客户机查询软件包,获取依赖关系等信息,在软件仓库中需要提供仓库数据库(repodata),其中收集了目录下所有rpm包的头部信息。

在RHEL6系统的安装光盘中,已针对软件目录Packages/建好了repodata数据,因此只要简单地将整个光盘中的内容或将光盘全部内容复制到硬盘通过HTTP或FTP进行发布,就可以作为软件仓库了。

推荐阅读:

配置EPEL YUM源

RedHat 本地yum源配置

RedHat Linux 本地yum源的配置

RedHat 6.2 Linux修改yum源免费使用CentOS

A):本地YUM:(光盘源)
以下是rhel_6.0-i386-DVD的目录结构:
HighAvailability  高可用相关软件包,如rhcs等相关套件
Server  常规软件包,如mysql,httpd,开发工具,系统管理工具等
LoadBalancer  负载均衡相关软件包,如lvs,pirihan
ResilientStorage存储
Packages  真正存放所有软件包的目录
images  rhel安装进程所需要的引导和驱动镜像文件,
isolinux 镜像文件引导时所需要的文件
用yum来安装所需要的软件包,先来搭建yum光盘源:
先将RHEL6的光盘挂载到某一目录下,如挂载到/mnt
#mount /dev/cdrom  /mnt
在/etc/yum.repos.d目录下创建一个以.repo结尾的文件:
#vi  /etc/yum.repos.d/server.repo
配置内容如下:
[Server]  //仓库名称
name=Server  //仓库描述信息
baseurl=file:///mnt/Server  //URL访问路径
enabled=1  //启用此软件仓库
gpgcheck=1  //验证软件包的签名
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release  //GPG公钥文件的位置

[LoadBalancer]
name=LoadBalancer
baseurl=file:///mnt/LoadBalancer
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[HighAvailability]
name=HighAvailability
baseurl=file:///mnt/HighAvailability
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

[ResilientStorage]
name=ResilientStorage
baseurl=file:///mnt/ResilientStorage
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release


Yum命令格式:
yum <options> <command><package...>
参数说明:
options: 常用的有:
-y : 如果在工作过程中如要使用者响应,这个参数可以直接回答yes
command:
list : 列出在yum server 上面有的RPM套件;若执行yum list installed则表示只列出系统中已安装的软件包,yum list available则表示只列出软件仓库中可用(尚未安装)的软件包,yum list update则表示列出可以升级版本的软件包。
install: 安装某个套件
update : 升级某个套件,如果update后面没有接套件名称,即更新目前主机所有已安装的套件.
info  : 列出某个套件的详细信息,相当于rpm -qi package内容
clean : 将已下载到本机的packages或headers移除
remove : 移除已经安装在系统中的某个套件
yum update 全部更新
yum update package 更新指定程序包package
yum check-update 检查可更新的程序
yum info <package> 显示安装包信息
yum list 显示所有已经安装和可以安装的程序包
yum list <package> 显示指定程序包安装情况
yum search <keyword>查找软件包,当需要根据某个关键词来查找相关的软件包时,可以执行yum  search 关键词,默认仅根据软件包名称和描述信息进行搜索。若执行yum search all 关键词,可以扩大搜索范围,例如,以下将搜索软件仓库并列出与httpd相关的软件包。Yum search allhttpd
yum clean headers 清除header
yum clean packages 清除下载的rpm包
yum clean all 清除header与rpm包
yum grouplist ,列出所有组
yum groupinstall 安装某个软件组如:yumgroupinstall Virtualization    安装虚拟化
问题解决:
1、如果首次安装软件包之后,再次安装别的软件包的时候,很可能会发现报错了,错误信息如下:
Error: Cannot retrieve repository metadata (repomd.xml) for repository:
InstallMedia. Please verify its path and try again
其实,rhel6在首次读取改软件仓库之后,会把原本光盘根目录下,也就是一同被你拷贝到软件仓库目录的media.repo复制一份到/etc/yum.repos.d/,而该文件也就是导致本地yum源失效的罪魁祸首。
解决方法:
删除软件仓库中的media.repo
# rm -f /share/rhel/media.repo
2、如果安装软件包出现public key for …….rpm isnot install
解决方法:导入完整性验证的公钥
#mount /dev/sr0 /mnt
#rpm –-import /mnt/RPM-GPG-KEY-redhat-release

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/19357.html