本地YUM源配置-Redhat Enterprise 5.9-阿里云开发者社区

开发者社区> 开发与运维> 正文

本地YUM源配置-Redhat Enterprise 5.9

简介:

   我记着我刚开始接触到yum这个命令的时候,实在两年前,曾经自己研究过,也搞出来过,但是今天老师讲到的时候,我才发现,这玩意自学真不好学,今天我终于搞懂了,分享一下!j_0003.gif


1:yum仓库的方式

软件仓库的提供方式有三种:

file://

ftp://

http://


RPM软件包的来源:

Red Hat发布的RPM包集合:如bind,lynx,gcc等

第三方、用户自定义的RPM包集合:如qq,realplay等软件


注:来自第三方的软件如果和yum库的软件包有依赖关系,解决办法:附2



2:配置yum客户端

.repo基本配置项:(该文件存在于/etc/yum.repos.d/目录下,在rhel5版本中有一个模板文件名字为:rhel-debuginfo.repo,可以自己创建一个以.repo结尾的文件来制定yum客户端的配置)

[源名称]:这个是自定义的,具有唯一性,所以不要和其他的源名称相同

name:本软件源的描述字段,这个也是自定义的,就描述一下,随意描述就行

baseurl:制定yum服务端的URL路径

enabled:是否启用此通道,1代表启用,0代表不启用

gpgcheck:是否验证待安装的RPM包;

这个和下面的gpgkey相关,也就是说在你安装软件的时候是否进行官方公钥验证,在验证的时候需要制定公钥路径,而下面的哪一项即为制定公钥的路径

gpgkey:用于RPM验证的密钥文件

标准格式为:/etc/yum.repos.d/server.repo文件内容

[rhel-server]                            //库名称,自定义

name=misc.cd.server                        //描述字段,自定义

baseurl=file:///misc/cd/Server                //这个为yum库的位置

enabled=1                            //设置启用此通道

gpgcheck=1   //使用yum安装软件包的时候,是否进行验证,可以设置为0,为0的时候,下面的一行可以取消了

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release    //验证密钥文件的位置


3:使用yum更新软件包工具

-list:查看软件列表

-search:查看软件包名称或者描述重要关键字

-info:查看软件包的说明信息

-install:安装指定软件包

-update:升级指定软件包

-remove:卸载指定软件包

-provides:类似于rpm –qf

4:使用yum更新工具(软件组基本操作)

-grouplist:查看软件组列表

-groupinfo:查看软件组的说明信息

-groupinstall:安装指定软件组

-groupupdate:升级指定软件组

-groupremove:卸载指定软件组

5:再换了yum仓库的时候,在此使用yum命令进行安装查看,显示等操作的时候可能会出现错误,这时,可能是由于缓存出现的错误,需要执行重建缓存的命令:yum clean all


6:在配置yum时经常出现的一些问题:

一:yum仓库有问题

1,挂载的光盘根本就不是该版本操作系统光盘;

2,指定的仓库路径根本就不存在;

3,指定的为光盘挂载目录时间,经常会出现错误,建议先用mount | tail -1 和ls /media/Server查看一下这里面是否有rpm包再指定目录。

二:yum客户端的配置文件内容正确,但是不是以.repo结尾;

三:本地yum仓库指定的时候,file://后面接的是一个绝对路径,不要忘了还有一个/;


7:我的server.repo文件内容

[root@localhost /]# cat /etc/yum.repos.d/server.repo

[Server]                        //核心服务器yum库

name=misc.cd.Server

baseurl=file:///misc/cd/Server

enabled=1

gpgcheck=1

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release


[VT]                   //虚拟化yum库

name=misc.cd.VT

baseurl=file:///misc/cd/VT

enabled=1

gpgcheck=0


[Cluster]                   //集群yum库

name=misc.cd.Cluster

baseurl=file:///misc/cd/Cluster

enabled=1

gpgcheck=0


[ClusterStorage]               //集群文件系统yum库

name=misc.cd.ClusterStorage

baseurl=file:///misc/cd/ClusterStorage

enabled=1

gpgcheck=0

[root@localhost /]# yum list | wc -l

3347

注:

1,关于server.repo:我将所有库的配置文件写到一个文件(server.repo)中,其实也可以分开写,将这些文件分别写到/etc/yum.repos.d/server.repo、/etc/yum.repos.d/VT.repo、/etc/yum.repos.d/Cluster.repo等也可以。

2,关于我的配置文件中的/misc/cd/目录:

在磁盘插入光驱的时候,默认是将磁盘挂载到该目录的,即使是你将磁盘从新挂载到另外一个目录,这个目录也是存在的,所以如果是磁盘作为yum库的话,用/misc/cd这个目录是无敌的!

其实/misc/cd目录之所以能够cd进入,是因为使用了触发挂载机制,详细关于触发挂载的内容请参考:

Linux系统管理_磁盘分区和格式化http://murongqingqqq.blog.51cto.com/2902694/1361918中扩展中的第3个:autofs触发挂载




附1:RHEL5光盘的结构为:(光盘中的目录)

Cluster:集群二进制包

ClusterStorage    :集群文件系统二进制包

Server:核心服务器的二进制包产品

VT:虚拟化二进制包

image:引导和驱动程序磁盘映像

isolinux:图像引导文件

在做yum客户端配置文件的时候,可以将他们分开,看起来会更清晰!!!


附2:使用yum结合本地yum库安装一个软件包xsnow:

注:

普通的rpm包安装用rpm -ivh,而当该包有依赖关系的时候需要使用到yum库里面的依赖包,所以需要使用yum来安装该本地包。

安装的时候需要用到yum的一个选项:localinstall

由于xsnow-1.42-10.i386.rpm包是在网站上下载的,所以没有密钥,在使用yum安装的时候,需要指定不进行密钥检测:--nogpgcheck;


[root@localhost ~]# yum -y localinstall Desktop/xsnow-1.42-10.i386.rpm --nogpgcheck

//使用yum安装桌面上的xsnow软件

[root@localhost ~]# rpm -ql xsnow | grep bin //查看xsnow软件启动命令

/usr/X11R6/bin/xsnow


执行该程序的方法,直接输入xsnow即可,由于该程序执行过程中将要占用该终端,所以,执行的时候可以使用:xsnow &使其在后台运行;


附3:如果安装了图形化界面,则可以通过system-config-packages命令启动图形化安装界面,如果yum库配置成功,那么不同yum库的配置文件制定不同的软件组,如:VT库里面的一些虚拟化软件包即可安装,如果yum库没有成功则不会有显示。



总结:yum配置不难,但是需要注意的地方太多,特别是做本地yum源的时候,哎……终于搞懂了!

最近学习的东西不多,但是太碎了,相比那些没有基础的学生,我压力算小多了,还是比较知足的!

系统这方面很多东西不懂,有时候喜欢自己搞,自学不是坏事儿,但有时候需要有人指点,以后得长点儿记性,自己搞,搞不懂了就得赶紧找人指点,这样才能加深记忆!!!



本文转自 murongqingqqq  51CTO博客,原文链接:http://blog.51cto.com/murongqingqqq/1358978


版权声明:本文首发在云栖社区,遵循云栖社区版权声明:本文内容由互联网用户自发贡献,版权归用户作者所有,云栖社区不为本文内容承担相关法律责任。云栖社区已升级为阿里云开发者社区。如果您发现本文中有涉嫌抄袭的内容,欢迎发送邮件至:developer2020@service.aliyun.com 进行举报,并提供相关证据,一经查实,阿里云开发者社区将协助删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章