Centos 制作本地yum源

在制作程序安装包的时候很多时候我们可能面对一个问题,怎样在没有网络环境的主机上使用yum安装依赖包。这里以32位依赖库glibc.i686为例来探讨一下,怎样制作一个本地的yum 源,来实现不依赖网络使用yum来安装glibc.i686。

Step1. 收集rpm安装包
要制作本地源,那么首先得需要rpm包,我们知道安装一个glibc.i686可能需要很多其他的依赖的rpm包,如果依赖包过多,我们不大可能通过手动整理的到,所以我们可以通过使用yum安装一次,来获取众多的rpm安装包。yum 是有缓存安装包的功能的,只是默认是不缓存安装包的。
1.编辑 /etc/yum.conf 文件中, 将文件中的 keepcache=0 改为 keepcache=1, 开启缓存功能(ps 收集好了rpm安装包后记得关闭缓存功能哦,否则/var/cache/yum 下会有很多rpm包哦)
2.搜索/var/cache/yum目录下所有的rpm包(之前没开启缓存功能,所有不会有无关的rpm包),将其拷贝至名为glibc的空文件夹下。将glibc 文件夹移动至一个名为localyumsource的空文件夹下。

Step2. 为本地yum源添加索引
1.先用yum install createrepo 安装createrepo。
2.createrepo -v localyumsource 这样就在localyumsource 目录下产生了一个yum源索引。

通过以上两步,本地源是制作好了,但是接下来怎么给客户机使用呢?

我们知道,yum 默认是使用网络源的,而这些设置是通过 /etc/yum.repos.d/Base.repo 实现的。如果有Base.repo存在,则yum优先使用Base.repo, 所以我们可以先通过将Base.repo改为Base.repo.bak ,将新的local.repo文件放入 /etc/yum.repos.d/ 文件夹下。其中local.repo 内容如下:

[localsource]
name=\”CentOS glib.i686\”
baseurl=file://yourpath/localyumsource
enabled=1 #这个选项表示这个repo中定义的源是启用的,0为禁用
gpgcheck=0 #是否检查GPG(GNU Private Guard),一种密钥方式签名

使用 yum install glib.i686 则会安装baseurl路径下的glibc.i686。

在使用完本地源之后记得将Base.repo.bak 改回为 Base.repo 哦,不然会使用不了yum的网络源。

猜你喜欢

转载自blog.csdn.net/mayh554024289/article/details/54236336