以光驱为源

为了避免从网络下载软件包可能发生的软件包不完整、下载速度慢、网络故障等问题,我们强烈建议您使用本地的 DVD/CD iso 来创建 yum 仓库,这样在安装的时候速度快,而且可以保证所有软件包都能顺利安装。

如果您有局域网内的 yum 仓库,可以直接使用它,就不需要按照以下的步骤重复创建了。

下面的操作都是在您安装好 RHEL/CentOS 系统后进行的。

先从光盘或已有的 YUM 仓库安装 createrepo 工具:

Shell 命令:

# rpm -ivh createrepo-x.y.z.rpm

createrepo 命令用于生成 yum 仓库所必须的一些信息,这些信息都存放在 repodata/ 目录底下,您打开看看就会明白它做了些什么事情。

使用 ISO 文件制作 yum 仓库

DVD ISO

如果你使用的是 DVD 光盘,可以直接挂载光盘,然后制作 yum 仓库:

Shell 命令:

# mkdir /mnt/dvd/

# mount /dev/cdrom /mnt/dvd/

# cd /mnt

# createrepo .

如果您使用的是官方的 DVD ISO,则需要将它复制到系统上,挂载后制作 yum 仓库:

Shell 命令:

# mkdir /mnt/dvd/

# mount -o loop /root/rhel5.1-dvd.iso /mnt/dvd

# cd /mnt

# createrepo .

CD ISO

如果您使用的是多个 CD iso 文件,需要先复制到系统上,挂载后制作 yum 仓库。

有几个 ISO 就创建几个目录,并将对应的 ISO 挂载上去:

Shell 命令:

# mkdir -p /mnt/{1,2,3,4,5,6}

# mount -o loop rhel5.1-disc1.iso /mnt/1

# mount -o loop rhel5.1-disc2.iso /mnt/2

# mount -o loop rhel5.1-disc3.iso /mnt/3

# mount -o loop rhel5.1-disc4.iso /mnt/4

# mount -o loop rhel5.1-disc5.iso /mnt/5

创建 yum 仓库:

Shell 命令:

# cd /mnt/

# createrepo .

定义 yum 仓库

创建 yum 仓库的定义文件:/etc/yum.repos.d/dvdiso.repo,然后加入以下内容:

Shell 命令:

[DVDISO]

name=DVD ISO

baseurl=file:///mnt/

enabled=1

gpgcheck=0

测试 yum 仓库

强烈建议执行 'yum clean all' 命令,将所有 yum metadata 等信息清空,再重新获取最新的仓库信息:

Shell 命令:

# yum clean all

# yum list

如果在 'yum list' 命令的输出中能够看到刚才制作的仓库里的软件包的名字,那就是 OK 了。再试着安装一个软件包看是否成功:

Shell 命令:

# yum install cyrus-sasl.i386

如果是 x86_64 平台,则将后面的 i386 改为 x86_64:

Shell 命令:

# yum install cyrus-sasl.x86_64

如果安装成功,表示 yum 仓库和 RPM 包都没问题。

 

以ftp服务器为源

一. 准备工作

1. 启动REDHAT Linux ,并放入安装光盘
2. 挂载光驱  mount /dev/cdrom /mnt
3. 安装FTP服务

    cd  /mnt/Server
    rpm  
-ivh vsftpd*
    chkconfig vsftpd on
    service vsftpd start

4. 安装createrepo软件包

    rpm –ivh createrepo*

5. 拷贝系统盘中的文件到本系统中

    cp  -R  /mnt/Server  /var/ftp/pub

 

二. 搭建YUM

1. 生成依赖性关系

    createrepo -/var/ftp/pub/Server/repodata/comps-rhel5-server-core. xml /var/ftp/pub/Server/

    这个地方要注意. comps-rhel5-server-core. xml一定不能手动生成. 默认安装光盘上已经有了
2. 做完上面的步骤后会有一个错误提示. “Could not remove old metadata dir: . olddata“说目录有问题。不用管他. 把那个目录删除掉

    rm  –rf  /var/ftp/pub/Server/. olddata

3. 把步骤1再做一遍

    createrepo -/var/ftp/pub/Server/repodata/comps-rhel5-server-core. xml /var/ftp/pub/Server/

4. 创建仓库文件
新建一个仓库文件. 名字可以随便起.

    cd  /etc/yum.repos.d
    vim yum. repo

  在文件中写如下内容

[base]
name
=base
1921680. 6是你的YUM源地址
baseurl
=ftp://192. 168. 0. 6/pub/Server
#是否开启源
enabled
=1
#是否验证. 可不要
gpgcheck
=1
#验证的密钥. 可不要
gpgkey
=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

     
经过以上步骤后. 自己的YUM源就搭建好了。当然. 你可以把你的源提供给别人使用. 要使用的人只用将你的repo文件复制一份到/etc/yum.repos.d/下. 或者自己手写一份。如果还想做其他仓库. 比如VT,Cluster,ClusterStorage,重复上面的步骤. 然后改改仓库文件就可以了。有了YUM. 以后再安装软件包就方便很多了. 不用考虑依赖性关系。

yum 用法

yum install 软件名 /**//*下载安装对应软件包*/
yum info 软件名
/**//*查看软件包的详细信息*/
yum list
|grep kernel /**//*查找kernel的软件包*/
yum update firefox
/**//*更新firefox*/
yum remove bmp
-mp3 /**//*移除bmp-mp3*/
man yum
/**//*yum命令详细信息查看*/
yum 文件的配置路径为 /etc/yum.conf
#0表示不保存下载的文件,1表示保存下载的文件,默认为不保存
keepcache=0
#指定下载文件的保存路径,文件保存在 分类目录/packages/ 中
cachedir=/var/cache/yum
posted on 2009-04-22 16:41  利刃  阅读(2813)  评论(0编辑  收藏  举报