首先先安裝createrepo-0.9.9-17.el6.noarch.rpm
我之前搭建過yum,是以我直接用yum install直接安裝
我的系統是redhat6
<code>[root@localhost rpm-gpg]</code><code># yum install createrepo</code>
<code>Loaded plugins: product-</code><code>id</code><code>, refresh-packagekit, security, subscription-manager</code>
<code>This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.</code>
<code>Setting up Install Process</code>
<code>Resolving Dependencies</code>
<code>--> Running transaction check</code>
<code>---> Package createrepo.noarch 0:0.9.9-17.el6 will be installed</code>
<code>--> Processing Dependency: python-deltarpm </code><code>for</code> <code>package: createrepo-0.9.9-17.el6.noarch</code>
<code>---> Package python-deltarpm.x86_64 0:3.5-0.5.20090913git.el6 will be installed</code>
<code>--> Processing Dependency: deltarpm = 3.5-0.5.20090913git.el6 </code><code>for</code> <code>package: python-deltarpm-3.5-0.5.20090913git.el6.x86_64</code>
<code>---> Package deltarpm.x86_64 0:3.5-0.5.20090913git.el6 will be installed</code>
<code>--> Finished Dependency Resolution</code>
<code>Dependencies Resolved</code>
<code>================================================================================</code>
<code> </code><code>Package Arch Version Repository Size</code>
<code>Installing:</code>
<code> </code><code>createrepo noarch 0.9.9-17.el6 rhel-</code><code>source</code> <code>94 k</code>
<code>Installing </code><code>for</code> <code>dependencies:</code>
<code> </code><code>deltarpm x86_64 3.5-0.5.20090913git.el6 rhel-</code><code>source</code> <code>71 k</code>
<code> </code><code>python-deltarpm x86_64 3.5-0.5.20090913git.el6 rhel-</code><code>source</code> <code>27 k</code>
<code>Transaction Summary</code>
<code>Install 3 Package(s)</code>
<code>Total download size: 192 k</code>
<code>Installed size: 518 k</code>
<code>Is this ok [y</code><code>/N</code><code>]: y</code>
<code>Downloading Packages:</code>
<code>--------------------------------------------------------------------------------</code>
<code>Total 667 kB</code><code>/s</code> <code>| 192 kB 00:00</code>
<code>Running rpm_check_debug</code>
<code>Running Transaction Test</code>
<code>Transaction Test Succeeded</code>
<code>Running Transaction</code>
<code> </code><code>Installing : deltarpm-3.5-0.5.20090913git.el6.x86_64 1</code><code>/3</code>
<code> </code><code>Installing : python-deltarpm-3.5-0.5.20090913git.el6.x86_64 2</code><code>/3</code>
<code> </code><code>Installing : createrepo-0.9.9-17.el6.noarch 3</code><code>/3</code>
<code>rhel-</code><code>source</code><code>/productid</code> <code>| 1.7 kB 00:00 ...</code>
<code> </code><code>Verifying : python-deltarpm-3.5-0.5.20090913git.el6.x86_64 1</code><code>/3</code>
<code> </code><code>Verifying : createrepo-0.9.9-17.el6.noarch 2</code><code>/3</code>
<code> </code><code>Verifying : deltarpm-3.5-0.5.20090913git.el6.x86_64 3</code><code>/3</code>
<code>Installed:</code>
<code> </code><code>createrepo.noarch 0:0.9.9-17.el6</code>
<code>Dependency Installed:</code>
<code> </code><code>deltarpm.x86_64 0:3.5-0.5.20090913git.el6</code>
<code> </code><code>python-deltarpm.x86_64 0:3.5-0.5.20090913git.el6</code>
<code>Complete!</code>
<code>You have new mail </code><code>in</code> <code>/var/spool/mail/root</code>
<code>[root@localhost rpm-gpg]</code><code># rpm -qa | grep createrepo</code>
<code>createrepo-0.9.9-17.el6.noarch</code>
我已經安裝成功
2. 在/root下mkdir一個檔案夾epel,我把我之前挂載在/mnt/Packages下的*.rpm copy到/root/epel
3. 在/etc/yum.repos.d下修改rhel-source.repo檔案(可能檔案名稱不同)
<code>[root@localhost yum.repos.d]</code><code># pwd</code>
<code>/etc/yum</code><code>.repos.d</code>
<code>[root@localhost yum.repos.d]</code><code># ls</code>
<code>rhel-</code><code>source</code><code>.repo</code>
<code>[root@localhost yum.repos.d]</code><code># cat rhel-source.repo</code>
<code>[rhel-Base]</code>
<code>name=Red Hat</code>
<code>baseurl=</code><code>file</code><code>:</code><code>///mnt</code>
<code>enabled=1</code>
<code>gpgcheck=0</code>
<code>[epel]</code>
<code>name=epel</code>
<code>baseurl=</code><code>file</code><code>:</code><code>///root/epel</code>
<code>[root@localhost yum.repos.d]</code><code>#</code>
【epel】是我新添加的配置
4. 我們執行 yum repolist指令看一下
<code>[root@localhost yum.repos.d]</code><code># yum repolist</code>
<code>file</code><code>:</code><code>///root/epel/repodata/repomd</code><code>.xml: [Errno 14] Could not </code><code>open</code><code>/read</code> <code>file</code><code>:</code><code>///root/epel/repodata/repomd</code><code>.xml</code>
<code>Trying other mirror.</code>
<code>repo </code><code>id</code> <code>repo name status</code>
<code>epel epel 0</code>
<code>rhel-Base Red Hat 0</code>
<code>repolist: 0</code>
repo id 和repo name已經顯示出了新添加的epel,但是出錯了缺少repomd.xml,下面我來建立一個repomd.xml
5.
<code>[root@localhost yum.repos.d]</code><code># createrepo /root/epel/</code>
<code>Spawning worker 0 with 15 pkgs</code>
<code>Workers Finished</code>
<code>Gathering worker results</code>
<code>Saving Primary metadata</code>
<code>Saving </code><code>file</code> <code>lists metadata</code>
<code>Saving other metadata</code>
<code>Generating sqlite DBs</code>
<code>Sqlite DBs complete</code>
<code>[root@localhost yum.repos.d]</code><code># ls /root/epel/</code>
<code>php-5.3.3-22.el6.x86_64.rpm php-pear-1.9.4-4.el6.noarch.rpm</code>
<code>php-cli-5.3.3-22.el6.x86_64.rpm php-pecl-apc-3.1.9-2.el6.x86_64.rpm</code>
<code>php-common-5.3.3-22.el6.x86_64.rpm php-pecl-memcache-3.0.5-4.el6.x86_64.rpm</code>
<code>php-gd-5.3.3-22.el6.x86_64.rpm php-pgsql-5.3.3-22.el6.x86_64.rpm</code>
<code>php-ldap-5.3.3-22.el6.x86_64.rpm php-soap-5.3.3-22.el6.x86_64.rpm</code>
<code>php-mysql-5.3.3-22.el6.x86_64.rpm php-xml-5.3.3-22.el6.x86_64.rpm</code>
<code>php-odbc-5.3.3-22.el6.x86_64.rpm php-xmlrpc-5.3.3-22.el6.x86_64.rpm</code>
<code>php-pdo-5.3.3-22.el6.x86_64.rpm repodata</code>
我先yum clean all清除下緩存并yum repolist下看有沒有出錯
<code>[root@localhost yum.repos.d]</code><code># yum clean all</code>
<code>Cleaning repos: epel rhel-Base</code>
<code>Cleaning up Everything</code>
<code>epel | 2.9 kB 00:00 ...</code>
<code>epel</code><code>/primary_db</code> <code>| 14 kB 00:00 ...</code>
<code>rhel-Base | 3.9 kB 00:00 ...</code>
<code>rhel-Base</code><code>/primary_db</code> <code>| 3.1 MB 00:02 ...</code>
<code>epel epel 15</code>
<code>rhel-Base Red Hat 3,648</code>
<code>repolist: 3,663</code>
yum repolist沒有出錯,看來我們建立成功了。
6. 測試
yum list
yum list all
yum install 安裝一個軟體
<code>[root@localhost epel]</code><code># yum install php-5.3.3-22.el6.x86_64.rpm</code>
<code>This system is not registered to Red Hat Subscription Management. You can use subscription-m anager to register.</code>
<code>Examining php-5.3.3-22.el6.x86_64.rpm: php-5.3.3-22.el6.x86_64</code>
<code>Marking php-5.3.3-22.el6.x86_64.rpm to be installed</code>
<code>---> Package php.x86_64 0:5.3.3-22.el6 will be installed</code>
<code>--> Processing Dependency: php-cli(x86-64) = 5.3.3-22.el6 </code><code>for</code> <code>package: php-5.3.3-22.el6.x86_ 64</code>
<code>--> Processing Dependency: php-common(x86-64) = 5.3.3-22.el6 </code><code>for</code> <code>package: php-5.3.3-22.el6.x 86_64</code>
<code>---> Package php-cli.x86_64 0:5.3.3-22.el6 will be installed</code>
<code>---> Package php-common.x86_64 0:5.3.3-22.el6 will be installed</code>
<code>============================================================================================</code>
<code> </code><code>Package Arch Version Repository Size</code>
<code> </code><code>php x86_64 5.3.3-22.el6 </code><code>/php-5</code><code>.3.3-22.el6.x86_64 3.5 M</code>
<code> </code><code>php-cli x86_64 5.3.3-22.el6 epel 2.2 M</code>
<code> </code><code>php-common x86_64 5.3.3-22.el6 epel 524 k</code>
<code>Total size: 6.2 M</code>
<code>Total download size: 2.7 M</code>
<code>Installed size: 13 M</code>
<code>Is this ok [y</code><code>/N</code><code>]: ^CExiting on user Command</code>
<code>[root@localhost epel]</code><code>#</code>
<code></code>
本文轉自 zhangguangyihttp://blog.51cto.com/bosszhang/1678304 51CTO部落格,原文連結: