程序包管理:RPM YUM的总结

风格不统一 提交于 2020-07-27 02:58:56

程序包管理:RPM YUM的总结

一、RPM的简介

     RPM 是RPM Package Manager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux、S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,是公认的行业标准。


二、RPM程序包管理的用途

    1、可以安装、删除、升级和管理软件;当然也支持在线安装和升级软件;

    2、通过RPM包管理能知道软件包包含哪些文件,也能知道系统中的某个文件属于哪个软件包;

    3、可以在查询系统中的软件包是否安装以及其版本;

    4、作为开发者可以把自己的程序打包为RPM 包发布;

    5、软件包签名GPG和MD5的导入、验证和签名发布

    6、依赖性的检查,查看是否有软件包由于不兼容而扰乱了系统;


三、RPM 的使用权限

    RPM软件的安装、删除、更新只有root权限才能使用;对于查询功能任何用户都可以操作;如果普通 用户拥有安装目录的权限,也可以进行安装。


四、RPM软件包管理的查询功能

    命令格式

       rpm {-q|--query} [select-options] [query-options]

       RPM的查询功能是极为强大,是极为重要的功能之一;举几个常用的例子,更为详细的具体的,     请参考#man rpm

  1、对系统中已安装软件的查询;

     1)查询系统已安装的软件;

        语法:rpm -q 软件名

        举例:[root@localhost beinan]# rpm -q gaim gaim-1.3.0-1.fc4

         -q就是 --query,此命令表示是不是系统安装了gaim ;如果已安装会有信息输出。如果没有       安装会输出gaim 就没有安装的信息;

        查看系统中所有已经安装的包,要加 -a 参数 ;

           [root@localhost RPMS]# rpm -qa    如果分页查看,再加一个管道 |和more命令;

           [root@localhost RPMS]# rpm -qa |more  

           在所有已经安装的软件包中查找某个软件,比如说 gaim ;可以用 grep 抽取出来;

          [root@localhost RPMS]# rpm -qa |grep gaim 结果和 rpm -q gaim 输出的结果是一样的;

    2)查询一个已经安装的文件属于哪个软件包;

        语法 rpm -qf 文件名  注:文件名所在的绝对路径要指出

        举例:[root@localhost RPMS]# rpm -qf /usr/etc/text1

    3)查询已安装程序包都安装到何处

        语法:rpm -ql [软件名] 或 rpm rpmquery -ql [软件名]

        举例:[root@localhost RPMS]# rpm -ql lynx

              [root@localhost RPMS]# rpmquery -ql lynx

    4)查询一个已安装软件包的信息

        语法格式: rpm -qi 软件名

         举例:[root@localhost RPMS]# rpm -qi lynx

    5)查看一下已安装软件的配置文件;

        语法格式:rpm -qc 软件名

        举例:[root@localhost RPMS]# rpm -qc lynx

    6)查看一个已经安装软件的文档安装位置:

       语法格式: rpm -qd 软件名

       举例:[root@localhost RPMS]# rpm -qd lynx

    7)查看一下已安装软件所依赖的软件包及文件;

       语法格式: rpm -qR 软件名

       举例:[root@localhost beinan]# rpm -qR rpm-python

       查询已安装软件的总结:对于一个软件包已经安装,我们可以把一系列的参数组合起来用;

       例如 rpm -qil ;

        [root@localhost RPMS]# rpm -qil lynx

  2、对于未安装的软件包的查看:

    查看的前提是您有一个.rpm 的文件,也就是说对既有软件file.rpm的查看等;

     1)查看一个软件包的用途、版本等信息;

      语法: rpm -qpi file.rpm

      举例:[root@localhost RPMS]# rpm -qpi lynx-2.8.5-23.i386.rpm

     2)查看一件软件包所包含的文件;

      语法: rpm -qpl file.rpm

      举例:[root@localhost RPMS]# rpm -qpl lynx-2.8.5-23.i386.rpm

     3)查看软件包的文档所在的位置;

      语法: rpm -qpd file.rpm

      举例:[root@localhost RPMS]# rpm -qpd lynx-2.8.5-23.i386.rpm

    4)查看一个软件包的配置文件;

      语法: rpm -qpc file.rpm

      举例:[root@localhost RPMS]# rpm -qpc lynx-2.8.5-23.i386.rpm


五、Yum的简介    

    Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令。


六、Yum的配置

  1、建立yum源

   (1)将你想提供的rpm包统一放进一个目录中,以这个目录作为源的地址。

   (2)要在这个目录中建立yum的下载源数据,通过createrepo这个软件来建立(需要安装过这个软          件)

   命令:createrepo /var/ftp/pub/

   这个文件夹是在建立了ftp服务器之后的存放文件的主文件夹,当然只有开启ftp服务之后才能从网      络访问它。

 2、设置Yum( 设置yum包括设置两部分内容)  

 (1)设置Yum软件自身的内容

        对yum.conf文件进行设置,该文件就存放在/etc/目录下 

        具体设置方法可以通过man yum.conf进行查询

 (2)Yum源定义文件

        该文件比较重要,存放在/etc/yum.repos.d/目录下。文件名可以自己创建,但后缀一             定要是repo

    该文件的编辑语法为:

       [testrhce]

       name=study linux for rhce

       baseurl=ftp://192.168.1.1/pub/

       enable=1

       gpgcheck=1

   在同一个文件中可以定义两个源

   在编辑好这个文件后就可以使用yum来下载更新源中所包含的rpm软件包了。  

  3、yum使用方法

   (1)yum 缓存清理 yum clean all 这条命令会清除/var/cache/yum/目录中的所有内容,             如果yum运行不正常用此命令。

   (2)列出已安装的软件包 yum list installed

   (3)列出yum软件包群组 yum grouplist

   (4)获取rpm包的信息 yum info tigervnc 同 rpm -qi

   (5)搜索rpm包 yum search tigervnc

   (6)安装rpm包 yum install tigervnc 

   (7)卸载rpm包 yum remove tigervnc 


七、命令格式

    yum的命令形式一般是如下:

    yum [options] [command] [package ...]

    其中的[options]是可选的,[command]为所要进行的操作,[package ...]是操作的对象。

常用选项:

    h(帮助),

   -y(当安装过程提示选择全部为"yes")

   -q(不显示安装的过程)


八、部分常用的命令包括

    自动搜索最快镜像插件:   yum install yum-fastestmirror

    安装yum图形窗口插件:    yum install yumex

    查看可能批量安装的列表: yum grouplist

   1、安装

     yum install 全部安装

     yum install package1 安装指定的安装包package1

     yum groupinsall group1 安装程序组group1

   2、更新和升级

    yum update 全部更新

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

    yum upgrade package1 升级指定程序包package1

    yum groupupdate group1 升级程序组group1

  3 查找和显示

    yum info package1 显示安装包信息package1

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

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

    yum groupinfo group1 显示程序组group1信息yum search string 

    根据关键字string查找安装包

  4 删除程序

    yum remove | erase package1 删除程序包package1

    yum groupremove group1 删除程序组group1

    yum deplist package1 查看程序package1依赖情况  

  5 清除缓存

    yum clean packages 清除缓存目录下的软件包

    yum clean headers 清除缓存目录下的 headers

    yum clean oldheaders 清除缓存目录下旧的 headers

    yum clean, yum clean all (= yum clean packages; yum clean oldheaders) 

    清除缓存目录下的软件包及旧的headers


易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!