风拂柳 發表於 2017-2-10 13:28:49

CentOS7如何手工创建自己的YUM仓库?

<p><font color="#ff0000">&nbsp;<strong>一、简介</strong></font>&nbsp;&nbsp;&nbsp;&nbsp;</p>
<p>在linux系统上安装软件有三种方式,一、源代码形式,绝大多数开源软件都是直接以源代码的形式发布,一般被打包成tar.gz的归档压缩文件,这种源代码形式的程序需要编译成二进制形式之后才能够运行使用,这种形式虽然兼容性、可控性较好,但使用起来较为麻烦,有大量的依赖关系需要解决;二、RPM安装包,RPM通过将源代码基于特定平台系统编译成可执行文件,并保存依赖关系,简化了开源软件的安装,但依然需要手工解决依赖关系;三、YUM软件管理,YUM设计的主要目的就是自动解决RPM的依赖关系,可以对RPM进行分组,引入仓库(repo)概念并支持多个仓库,配置比较简单。</p>
<p>YUM使用仓库保存管理RPM软件包,仓库的配置文件保存在/etc/yum.repos.d/目录下,CentOS自带的配置文件如下:</p>
<p>#&nbsp;cd&nbsp;/etc/yum.repos.d/</p>
<p>#&nbsp;ll</p>
<p>total&nbsp;24</p>
<p>-rw-r--r--.&nbsp;1&nbsp;root&nbsp;root&nbsp;1664&nbsp;Mar&nbsp;31&nbsp;15:27&nbsp;CentOS-Base.repo</p>
<p>-rw-r--r--.&nbsp;1&nbsp;root&nbsp;root&nbsp;1309&nbsp;Mar&nbsp;31&nbsp;15:27&nbsp;CentOS-CR.repo</p>
<p>-rw-r--r--.&nbsp;1&nbsp;root&nbsp;root&nbsp;&nbsp;649&nbsp;Mar&nbsp;31&nbsp;15:27&nbsp;CentOS-Debuginfo.repo</p>
<p>-rw-r--r--.&nbsp;1&nbsp;root&nbsp;root&nbsp;&nbsp;290&nbsp;Mar&nbsp;31&nbsp;15:27&nbsp;CentOS-fasttrack.repo</p>
<p>-rw-r--r--.&nbsp;1&nbsp;root&nbsp;root&nbsp;1331&nbsp;Mar&nbsp;31&nbsp;15:27&nbsp;CentOS-Sources.repo</p>
<p>-rw-r--r--.&nbsp;1&nbsp;root&nbsp;root&nbsp;1002&nbsp;Mar&nbsp;31&nbsp;15:27&nbsp;CentOS-Vault.repo</p>
<p>将这几个文件删除,rm -rf CentOS* 或则移除该文件夹 mv CentOS* /yum。</p>
<p><strong><font color="#ff0000">二、手工配置YUM仓库</font></strong></p>
<p><strong>1、将所有rpm软件包拷贝到一个文件夹下</strong>,这里我们使用CentOS 7自带的rpm软件包,在VMware物理机无法联网的情况下可以使用。将CentOS7安装镜像挂载在CentOS下,文件默认路径在/run/media/centostest/下,CentOS6保存在/media/下,这里centostest为自己的用户名,rpm软件包保存在镜像文件Packages文件夹下。</p>
<p>建立一个文件夹并拷贝,拷贝时间会比较长,虚拟光盘的话会快一点。</p>
<p>#&nbsp;cd&nbsp;/</p>
<p>#&nbsp;mkdir&nbsp;yum-packages</p>
<p>#&nbsp;cp&nbsp;-rv&nbsp;/run/media/centostest/CentOS\&nbsp;7\&nbsp;x86_64/Packages/*&nbsp;/yum-packages/</p>
<p><strong>2、通过rpm命令安装createrepo软件</strong>,createrepo软件包就包含在前面拷贝的rpm文件内。</p>
<p>安装createrepo软件,软件名称通过Tab键可以自动补全。</p>
<p>#&nbsp;cd&nbsp;yum-packages/</p>
<p>#&nbsp;rpm&nbsp;-ivh&nbsp;createrepo-0.9.9-23.el7.noarch.rpm&nbsp;</p>
<p>warning:&nbsp;createrepo-0.9.9-23.el7.noarch.rpm:&nbsp;Header&nbsp;V3&nbsp;RSA/SHA256&nbsp;Signature,&nbsp;key&nbsp;ID&nbsp;f4a80eb5:&nbsp;NOKEY</p>
<p>Preparing...&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;#################################&nbsp;</p>
<p>package&nbsp;createrepo-0.9.9-23.el7.noarch&nbsp;is&nbsp;already&nbsp;installed</p>
<p><strong>3、运行createrepo命令建立索引</strong></p>
<p>createrepo&nbsp;/yum-packages/</p>
<p>完成后会在yum-packages文件夹下建立一个repodata的文件夹,里面保存索引信息。</p>
<p><strong>4、添加配置文件</strong></p>
<p>在/etc/yum.repos.d/文件夹下添加配置文件。</p>
<p>#&nbsp;cd&nbsp;/etc/yum.repos.d/</p>
<p>#&nbsp;vim&nbsp;ownyum.repo</p>
<p>#&nbsp;cat&nbsp;ownyum.repo&nbsp;</p>
<p></p>
<p>name&nbsp;=&nbsp;centos&nbsp;yum</p>
<p>baseurl&nbsp;=&nbsp;file:///yum-packages/</p>
<p>#</p>
<p>这里进行了最简单的配置,、name 任意取名字就行,enabled、gpgcheck可配置也可不配置。</p>
<p><strong>5、清空YUM Cache</strong></p>
<p>使用yum clean all命令清空,并用yum list命令查看yum库</p>
<p>#&nbsp;yum&nbsp;clean&nbsp;all</p>
<p>Loaded&nbsp;plugins:&nbsp;fastestmirror,&nbsp;langpacks</p>
<p>Cleaning&nbsp;repos:&nbsp;centos</p>
<p>Cleaning&nbsp;up&nbsp;everything</p>
<p>Cleaning&nbsp;up&nbsp;list&nbsp;of&nbsp;fastest&nbsp;mirrors</p>
<p>#&nbsp;yum&nbsp;list</p>
<p>可以看到自己建立的yum仓库信息</p>
<p>xorg-x11-xbitmaps.noarch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.1.1-6.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>xpp3.noarch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.1.3.8-11.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>xrestop.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0.4-14.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>xsane-common.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0.999-9.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>xsane-gimp.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0.999-9.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>xsettings-kde.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0.12.3-7.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>xsom.noarch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0-10.20110809svn.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>xterm.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;295-3.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>xulrunner.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;31.4.0-1.el7.centos&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>xz-devel.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.1.2-9alpha.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>yp-tools.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.14-3.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>ypbind.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;3:1.37.1-7.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>ypserv.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.31-8.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>yum-plugin-aliases.noarch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.1.31-29.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>yum-plugin-changelog.noarch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.1.31-29.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>yum-plugin-tmprepo.noarch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.1.31-29.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>yum-plugin-verify.noarch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.1.31-29.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>yum-plugin-versionlock.noarch&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.1.31-29.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>zlib-devel.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;1.2.7-13.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>zsh.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5.0.2-7.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos&nbsp;&nbsp;&nbsp;</p>
<p>zziplib.x86_64&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;0.13.62-5.el7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;centos</p>
<p>这里的centos为里面的名字。</p>
頁: [1]
查看完整版本: CentOS7如何手工创建自己的YUM仓库?