一、实验环境:

CentOS上搭建yum源,并测试安装bind软件。

需要CentOS的安装光盘

   二、实验步骤:

1.首先把镜像盘挂在上:mount /dev/cdrom /media/

CentOS搭建本地yum源

2.创建本地源的目录,这个可以随便创建,我就创建在根下/yum/repo-packages目录下。把挂载光盘上的所有数据都拷贝到这个目录下。

CentOS搭建本地yum源


3.如果安装系统个时候安装了yum软件包后,在/etc/下有yum的文件夹,我们也可以用rpm工具查看是不是安装了yum软件包。

[root@localhost ~]#rpm –qa | grep yum

CentOS搭建本地yum源


4.进入/etc/yum.repos.d/目录下,我们需要把默认的两个yum配置文件保存到另一个目录中,不然首选查找默认的yum配置文件,在当前目录下创建一个村发备份的目录,我这里就创建一个back,然后移动默认的配置文件。

[root@localhost yum.repos.d]#mkdir back

[root@localhost yum.repos.d]#mv * back

CentOS搭建本地yum源


5.然后用手工创建一个yum服务的配置文件,配置文件必须是CentOS-Local.repo并且要存放在/etc/yum.repos.d/目录下。

[root@localhost yum.repos.d]#vim CentOS-Local.repo

# CentOS-Local.repo

#

# This repo is used to mount the default ocations for a CDROM / DVD on

# CentOS-5. You can use this repo and yum to install items directly off the

# DVD ISO that we release.

#

# To use this repo, put in your DVD and use it with the other repos too:

# yum --enablerepo=c5-local [command]

#

# or for ONLY the media repo, do this:

#

# yum --disablerepo=\* --enablerepo=c5-local [command]

[c5-local]

name=CentOS-5 - Local

baseurl=file:///yum/repo-packages/CentOS/ 若本机为服务器,且为客户端(此时不需httpftp

或者ftp://192.168.0.200/pub/Server  192.168.0.200ftp服务器的地址

gpgcheck=1  //是否检查GPG签名,0为不检查,1为检查

enabled=1  //开启仓库

gpgkey=file:///usr/repo-packages/RPM-GPG-KEY-CentOS-5  //签名文件

其中有#的行是注释行,可以不用写。

CentOS搭建本地yum源


   [ ]内的是仓库的名字

   name是仓库的描述也可以说是名字

   baseurl仓库的位置,如果是本地配置为客户端,则要以"file:/"开头,如果库在ftp服务器上就按上图显示

  u配置.在这里注意这个地址不能写成ftp://192.168.0.200/var/ftp/pub目录,

  u因为登陆到ftp上的根目录就是/var/ftp目录.

   enabled是否启用这个仓库,1为起用,0为禁用

   gpgcheck是否检查GPG签名(用来验证要安装的包是不是CentOS官方的,这一行没有也可)

   GPGKEY的存放地址一般就在图片上显示的,(这一行没有也行)

6.安装软件包源信息生成工具包。

CentOS搭建本地yum源


7.安装完成后,可以生成软件包源信息文件。

CentOS搭建本地yum源


在生成软件包源信息的时候,花的时间比较长,看系统盘里的软件有多少,这里有3392rpm的软件包。

8.生成完成后,需要注意的时,清理原来的数据源配置信息。

[root@localhost yum.repos.d]#yum clean all

CentOS搭建本地yum源


9.在上面配置yum配置文件的时候,启动了检查GPG签名,所以必须导入软件包KEY文件。

[root@localhost yum.repos.d]#rpm –import /yum/repo-packages/RPM-GPG-KEY-CentOS-5  (需要两个“-”符号)

CentOS搭建本地yum源


10.本地源的搭建已经全部完成,下面我们可以使用本地源来进行软件的安装了。

[root@localhost ~]# yum -y install bind*

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

Setting up Install Process

Resolving Dependencies

--> Running transaction check

---> Package bind-devel.i386 30:9.3.6-4.P1.el5_4.2 set to be updated

---> Package bind-libbind-devel.i386 30:9.3.6-4.P1.el5_4.2 set to be updated

---> Package bind-libs.i386 30:9.3.6-4.P1.el5_4.2 set to be updated

--> Finished Dependency Resolution

Dependencies Resolved

=========================================================================================================================================

Package  Arch  Version Repository Size

=========================================================================================================================================

Installing:

bind-devel  i386  30:9.3.6-4.P1.el5_4.2  c5-local  2.8 M

bind-libbind-devel  i386  30:9.3.6-4.P1.el5_4.2  c5-local  441 k

bind-libs  i386 30:9.3.6-4.P1.el5_4.2  c5-local  857 k

Transaction Summary

=========================================================================================================================================

Install  3 Package(s)

Upgrade  0 Package(s)

Total download size: 4.0 M

Downloading Packages:

-----------------------------------------------------------------------------------------------------------------------------------------

Total 74 MB/s | 4.0 MB  00:00

Running rpm_check_debug

Running Transaction Test

Finished Transaction Test

Transaction Test Succeeded

Running Transaction

Installing  : bind-libs  1/3

error: failed to stat /media/CentOS_5.5_Final: No such file or directory

Installing  : bind-devel 2/3

Installing  : bind-libbind-devel  3/3

Installed:

bind-devel.i386 30:9.3.6-4.P1.el5_4.2  bind-libbind-devel.i386 30:9.3.6-4.P1.el5_4.2 bind-libs.i386 30:9.3.6-4.P1.el5_4.2

Complete!

[root@localhost ~]#

           安装参数:

           yum

           参数说明:

     noptions:常用的有

     n-y :如果在工作过程中如要使用者响应,这个参数可以直接回答yes

     ncommand:

     nlist :列出在yum server上面有的RPM套件

     ninstall:安装某个套件

     nupdate :升级某个套件,如果update后面没有接套件名称,即更新目前主机所有已安装的套件.

     ninfo  :列出某个套件的详细信息,相当于rpm -qi package内容

     nclean :将已下载到本机的packagesheaders移除

     nremove :移除已经安装在系统中的某个套件

     nyum localinstall package本地安装软件包

     nyum update全部更新

     nyum update package更新指定程序包package

     nyum check-update检查可更新的程序

     nyum info显示安装包信息

     nyum list显示所有已经安装和可以安装的程序包

     nyum list显示指定程序包安装情况

     nyum search查找软件包

     nyum remove | erase package1删除程序包

     nyum clean headers清除header

     nyum clean packages清除下载的rpm

     nyum clean all清除headerrpm

           11.可以看到在CentOS上成功的搭建了本地yum源。