首页 > 代码库 > yum 的使用

yum 的使用

Yum的使用

  yum简介

YUMYellow dog Updater Modified的缩写,是有Duke University所发起的计划,目的就是为了解决RPM的依赖关系问题,方便使用者进行软件包的安装,升级等工作。

  Yum可以分为本地yum和网络yum

本地yum是将源文件(软件包)放在本地主机上,而网络yum是将源文件放在yum服务器上,yum客户端通过ftp  wwwnfs下载到本地然后进行安装。

  案例一:网络yum服务器 ------基于32centos6.5   FTP

        E9896B24EA8D4E8D9F7F0854B8147F0B

 步骤一:yum服务器的配置

     安装vsftpd

cd  /media/cdrom/Packages/       #挂载光驱

yum --disablerepo=\* --enablerepo=c6-media install vsftpd –y

rpm -ql vsftpd                    #查看vsftpd形成的文件目录

36F43C15E91C452395ECB4A428F3D2D2

会看的这两个目录,我们知道ftp提供账号登陆和匿名登陆,匿名登陆时默认进入/var/ftp目录同时会看到一个/var/ftp/pub目录。

开启vsftpd服务

[root@vbird Packages]# service vsftpd start

5AA8F5C6F5E94ED6B2DD31C0023DB967

进入/media/cdrom/下把所有文件拷贝到/var/ftp/目录下以供ftp客户访问

[root@vbird cdrom]# cp -r . /var/ftp

   步骤二:yum客户端的配置

      安装ftplftp

cd  /media/cdrom/Packages/       #挂载光驱

yum --disablerepo=\* --enablerepo=c6-media install ftp  –y

配置/etc/yum.repos.d/下的文件来为yum客户端指明yum服务器的位置,如何访问,数字签名等。

 

[root@vbird Packages]# cd /etc/yum.repos.d/

[root@vbird yum.repos.d]# ll

total 16

-rw-r--r--. 1 root root 1926 Nov 27  2013 CentOS-Base.repo

-rw-r--r--. 1 root root  638 Nov 27  2013 CentOS-Debuginfo.repo

-rw-r--r--. 1 root root  630 Nov 27  2013 CentOS-Media.repo

-rw-r--r--. 1 root root 3664 Nov 27  2013 CentOS-Vault.repo

可以发现有4条配置文件,对以上作出备份并修改来指明yum服务器的ftp访问

[root@vbird yum.repos.d]# cp CentOS-Base.repo CentOS-Base.repo.abk

[root@vbird yum.repos.d]# cp CentOS-Debuginfo.repo CentOS-Debuginfo.repo.abk

[root@vbird yum.repos.d]# cp CentOS-Media.repo CentOS-Media.repo.abk

[root@vbird yum.repos.d]# cp CentOS-Vault.repo CentOS-Vault.repo.abk

[root@vbird yum.repos.d]# ll

total 32

-rw-r--r--. 1 root root 1926 Nov 27  2013 CentOS-Base.repo

-rw-r--r--. 1 root root 1926 Jul 15 05:09 CentOS-Base.repo.abk

-rw-r--r--. 1 root root  638 Nov 27  2013 CentOS-Debuginfo.repo

-rw-r--r--. 1 root root  638 Jul 15 05:09 CentOS-Debuginfo.repo.abk

-rw-r--r--. 1 root root  630 Nov 27  2013 CentOS-Media.repo

-rw-r--r--. 1 root root  630 Jul 15 05:09 CentOS-Media.repo.abk

-rw-r--r--. 1 root root 3664 Nov 27  2013 CentOS-Vault.repo

-rw-r--r--. 1 root root 3664 Jul 15 05:10 CentOS-Vault.repo.abk

删除以三个后缀为.repo的文件保留CentOS-Debuginfo.repo文件用来修改

[root@vbird yum.repos.d]# ll

total 20

-rw-r--r--. 1 root root 1926 Jul 15 05:09 CentOS-Base.repo.abk

-rw-r--r--. 1 root root  638 Nov 27  2013 CentOS-Debuginfo.repo

-rw-r--r--. 1 root root  638 Jul 15 05:09 CentOS-Debuginfo.repo.abk

-rw-r--r--. 1 root root  630 Jul 15 05:09 CentOS-Media.repo.abk

-rw-r--r--. 1 root root 3664 Jul 15 05:10 CentOS-Vault.repo.abk

     编辑CentOS-Debuginfo.repo文件  

     Vim   CentOS-Debuginfo.repo

4C100AE191C7412ABB71E0F48C4F6626

保存退出后用 yum list all查看

6F87DA83E8E84114A63A003C911608E8

DBA4EF5813634D6D86004E547C0AEF17

在这里我们就可以在yum客户端下用yum来对软件包进行信息查询、安装、卸载、升级等操作

查询httpd的信息:

CBF44B26A23B46329EE059BA0E93E390

安装httpd

BCBF984C10ED4D55BD1B6D9DDD9E9646

D9036014E88A4E768E35D33FFEA16A17

yum  list  all                #列出全部

yum  list  installed           #列出已安装

yum  list  available           #列出未安装

yum   info   名称           #显示该软件包的信息

yum   remove   名称        #删除

yum  grouplist               #列出包组

                             yum  groupinstall

                             yum  groupinfo

                             yum  groupremove                                                             

                             yum  localinstall            #本地安装

                             yum  repolist

                             yum  clean  all            #清除yum缓存

     步骤三:yum服务器的更新

      yum服务器的软件包发生更新时如何同步到yum客户端呢?

使用yum clean all是无济于事的

当我们进入/var/ftp/目录下时会看到一个dr-xr-xr-x. 2 root root   4096 Jul 20 04:39 repodata这样的目录,用tree查看该目录

122D04F4D03644148A83BD9D8D3404D2

      其中repomd.xml就是用来记录服务器Packages目录下软件包的信息情况,我们需要对它来进行更新,在ftp目录下使用createrepo命令

[root@vbirdftp]#createrepo -g repodata/3fe289964708818d65e318fae9784208fdb73f21560f21b524582a87c170a677-c6-i386-comps.xml  ./

这样yum服务器的更新信息就能同步到yum客户端了

 


本文出自 “CL's博客” 博客,请务必保留此出处http://changlinlin.blog.51cto.com/7353999/1569383

yum 的使用