Yum软件仓库配置

现在我们来说一下yum源的配置,大家都知道rpm –ivh xxx.rpm能安装软件,这是没有错的,但是如果哪天你要安装一个软件,发现一堆的依赖关系,关系多达几百个,错综复杂,你是不是会崩溃掉,这个情况在默认没有安装桌面的环境中经常遇到,在init 3模式下安装init 5的X window,用rpm非疯了不可

YUM的使用

我们就以安装GCC为例吧

Rpm –ivh /media/Packages/gcc-4.4.6-4.e16.i686.rpm,命令本身是没错的,可是为什么安装不成功呢,看最下面,需要这么些个包,其实这些包也依赖于其他的包,这就郁闷了吧,我们用yum来试试,yum可以自动判断依赖关系,直接帮我们解决

Yum软件仓库配置_第1张图片

如下图,

Yum install gcc命令

它自动判断出了安装gcc的时候都依赖于哪些包,那些包又依赖于哪些包,直接给我们列出来,问我们是否要安装,我们直接“Y”就可以,

Yum软件仓库配置_第2张图片

 

 

Yum软件仓库配置_第3张图片

大家一定想知道,它为什么能自动判断吧,还有,它从哪里知道的要哪些软件包名,其实要配置一个仓库,这个仓库里就指定了我们的软件在哪里放着

Yum软件仓库配置_第4张图片

Yum软件仓库配置_第5张图片

上图就是我们的仓库文件的内容了,我来解释一下

[Steven]只是仓库名字,这个可以随意

Name=….这个你可以理解为仓库的描述,这个可以不写这一行

Baseurl=file:///Media/Server,这里解释一下为什么是///三个/,file:// ftp:// http://大家是不是很熟悉,file://的意思是文件在本地,在Linux中一切都以根开始的那路径上要加个/,所以最后是file:///media/Server,意思是在本地的/media/Server下

Enable=1,这里是说是否用户仓库,1是启用,0是不启用

Gpgcheck=0是说是否检查软件的KEY,我一般都不检查,各位随意

Gpgkey=…这里是说你的KEY文件在哪里,我不启用,所以也无所谓了

那我来问一下,是不是只要把所有的RPM都拷贝到一个文件夹,然后指向那个文件夹就行了呢,答案是不行的,我们要创建一个软件源才行

创建软件源

我们要用到createrepo这个命令,我们来安装一下

yum -y install createrepo

Yum软件仓库配置_第6张图片

我们来规划一下,我们要在/packages下建立我们的软件源,首先,我们把这个文件夹建立一下

Yum软件仓库配置_第7张图片

现在的目录是空的,然后我们来把软件拷贝到里面

Yum软件仓库配置_第8张图片

Yum软件仓库配置_第9张图片

现在只有一个文件夹,里面一堆软件包,我们来指定一下yum路径,看看能不能安装吧

Yum软件仓库配置_第10张图片

没有repo…什么xml什么的,总的来讲就是没有“元数据”

我们来生成一下,现在先看一下目录结构

Yum软件仓库配置_第11张图片

输入下图的命令,就开始了创建的过程,会有一会时间,和你有多少软件包有关系

Yum软件仓库配置_第12张图片

看,上图中已经多了一个repodata的文件夹,现在我们再来用yum安装一下试试

Yum软件仓库配置_第13张图片

Yum软件仓库配置_第14张图片

完美成功