YUM仓库搭建
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了YUM仓库搭建相关的知识,希望对你有一定的参考价值。
YUM主要用于自动安装、升级rpm软件包,它能自动查找并解决rpm包之间的依赖关系。要成功的使用YUM工具安装更新软件或系统,就需要有一个包含各种rpm软件包的repository(软件仓库),这个软件仓库我们习惯称为yum源。网络上有大量的yum源,但由于受到网络环境的限制,导致软件安装耗时过长甚至失败。特别是当有大量服务器大量软件包需要安装时,缓慢的进度条令人难以忍受。因此我们在优化系统时,都会更换国内的源。
相比较而言,本地YUM源服务器最大优点是局域网的快速网络连接和稳定性。有了局域网中的YUM源服务器,即便在Internet连接中断的情况下,也不会影响其他YUM客户端的软件安装和升级。
服务器端
1.创建yum仓库目录,rpm包都上至此目录
mkdir -p /application/yum/centos6.6/x86_64/
2.安装createrepo软件
yum -y install createrepo
3.初始化repodata索引文件
createrepo -pdo /application/yum/centos6.6/x86_64/ /application/yum/centos6.6/x86_64/
4.进入需要提供仓库的目录
cd /application/yum/centos6.6/x86_64/
5.用Python的http模块提供web服务,适用于内网环境, 可以通过浏览器输入本机IP查看。jobs查看后台进程,kill %n 结束进程
python -m SimpleHTTPServer 80 &>/dev/null &
6.每加入一个rpm包(或多个rpm包)要更新一下
createrepo --update /application/yum/centos6.6/x86_64/
修改yum配置文件keepacache=0改为1,保存下载过的rpm包
sed -i ‘s#keepcache=0#keepcache=1#g‘ /etc/yum.conf
安装包存储目录= /var/cache/yum/x86_64/6/base/packages
cachedir=/var/cache/yum/$basearch/$releasever
客户端
1.进入yum仓库配置目录
cd /etc/yum.repos.d
2.新建本地yum源配置文件
vim local_conf.repo
[local]
name=Server
baseurl=http://192.168.99.91
enable=1
gpgcheck=0
3.指定使用local库(临时生效)
yum --enablerepo=local--disablerepo=base,extras,updates,epel list
或者编辑repo配置文件,在每一个启动的源加上enable=0,让该源失效
vim /etc/yum.repos.d/CentOS-Base.repo
# enabled=0#改为1就启用,没有此参数也是启用。
[base]
…………
enabled=0
[updates]
…………
enabled=0
[extras]
…………
enabled=0
# 还有其他开启的仓库就使用这个办法关闭
YUM服务配置文件
全局配置文件
main部分定义了全局配置选项,整个yum配置文件应该只有一个main,位于/etc/yum.conf
# cat /etc/yum.conf
[main] cachedir=/var/cache/yum/$basearch/$releasever #yum缓存的目录,存储下载的rpm包和数据库 keepcache=0 #安装完成后是否保留软件包,0为不保留(默认为0),1为保留 debuglevel=2 #Debug信息输出等级,范围为0-10,缺省为2 logfile=/var/log/yum.log #日志文件位置 exactarch=1 #有1和0两个选项,设置为1,则yum只会安装和系统架构匹配的软件包。 obsoletes=1 # update的参数,相当于upgrade,允许更新陈旧的RPM包。 gpgcheck=1 # plugins=1 #是否启用插件,默认1为允许,0表示不允许 installonly_limit=5 bugtracker_url=http://bugs.centos.org/set_project.php?project_id=16&ref=http://bugs.centos.org/bug_report_page.php?category=yum distroverpkg=centos-release #指定一个软件包,yum会根据这个包判断发行版本
以上是关于YUM仓库搭建的主要内容,如果未能解决你的问题,请参考以下文章