rpm是Redhat Package  Manager的缩写,是Linux的特有的软件包的管理工具,可以很大程度上方便我们安装软件包。当然现在的大部分包都可以使用yum来方便的安装,但rpm在此之前,确实是一种非常方便的工具,基本上所有使用Redhat  Linux的人都对它相当熟悉。

    yum是yellow dog update manager 的缩写,由于我们在安装包是会出现许多依赖关系,所以当我们安装某个软件包时,系统会提示我们应该安装哪一个包,而当我们去安装那个软件包时有可能会需要安装另外的包,所以这是一个非常让人头痛的问题。而yum就很好的解决了这个问题,它是由客户端和yum源库组成的。我们需要在客户端安装yum客户端包,并且需要配置一下客户端配置文件,对于yum源来说,它一般存放了所有可能需要的软件包,并且库中建立了个软件包的依赖关系,并将相同类别的服务分组。

rpm:

  1. 二进制文件   安装路径:/bin,/sbin,(启动必须) /usr/bin ,/usr/sbin(运行必须)   /usr/local/bin ,/usr/local/sbin (第三方软件)
  2. 配置文件(纯文本) 安装路径:/etc  ,/usr/local/etc
  3. 库文件       安装路径: /lib ,/usr/lib ,/usr/local/lib , /usr/X11/lib
  4. 帮助文件     安装路径: /usr/share/doc  ,/usr/share/man ,/usr/share/man

rpm的选项

       -q  查询       -i  安装    -e   载   -V   校验      -U/-F    更新

        --force  忽略冲突   

       --nodeps  略依赖关系   

        --oldpackage  降级

       -ivh   以每个#号2%的显示安装      

       --test   测试(不安装)

        --nosignature     指定不需签名 

        -Uvh升级时,老版本安装过则更新,否则安装老版本在更新

        -Fvh升级时,若老版本没安装则停止更新

        -qa显示安装的全部软件包     

        -qf  filename 查询文件属于哪个软件包

        -ql  packagename  查询软件包安装的文件(安装过后)

       -qpl packagename  查询软件包安装的文件(未安装前,p指定全路径)

       -qi packagename  软件包的信息(安装过后)

       -qpl packagename 软件包的信息(未安装前,p指定全路径)

yum:

yum获取软件包的方式 

ftp://,

http://

file:///.

yum的参数

     install   (非全名) 安装软件包   

           info           查看软件包的摘要信息

            remove/erase   删除包 (使用remove时注意,它会删除所有有依赖关系的包)

            groupinstall      安装软件包组  groupinfo   groupremove

            grouplist    查看软件包组

            localinstall   安装本地软件包(yum可解决依赖关系)

            reinstall     重新安装       

            serach     软件包的简要信息(不精确)

            check-update   检查可更新的包  repolist  已安装好yum库

           -y  不询问安装         -q  静默模式安装     

           -t        忽略已安装的包(安装多个包时,否则后面的包都不安装)]

           --nogpgcheck    指定不需要验证签名信息

        yum两个常用的参数

                  list   all    显示所有软件包(可使用通配符搜索) list "na*"

                         available 所有可安装的包

                         update  可升级的包

                         installed 已安装的包

                         exeras 额外的包(不属于yum库的包)

                         obletes 已过时的包

                         recent 刚加入yum库的包

                clean  all    清空所有信息

                         package 清空软件包信息

                         headers 首部 ,包的依赖关系

                         dbcahe  软件包的元数据信息(数据库)

创建本地yum源

            首先我们建立/media/cdrom用于挂在光驱

            建立/var/yum/作为yum源的目录

       挂载光盘                 mount /dev/cdrom   /media/cdrom

       拷贝光盘文件          cp -r /media/cdrom/*  /var/yum

       修改文件的权限       chmod -R u+w /var/yum

       安装createrepo包 (本地已安装时可省略此步)

           rpm -ivh  /media/cdrom/Server/createrepo…

       建立yum源元数据信息

         createrepo -g /var/yum/Server/repodata/comps......

                                                 /VT/

                                          /Cluster/

                                                 /ClusterServer/

           修改yum客户端配置文件

                [Server]
                name=  Instructor Server Repository   
                baseurl=file:///var/yum/Server
                gpgcheck=0

                [VT]
                name=Instructor VT Repository   
                baseurl=file:///var/yum/VT
                gpgcheck=0      

                 [Cluster]
                name= Instructor Cluster Repository   
                baseurl=file:///var/yum/Cluster
                gpgcheck=0

                [ClusterStorag]                                                                    

                name=Instructor ClusterStorag Repository                    

                baseurl=file:///var/yum/ClusterServer
                gpgcheck=0