yum rpm 概述 

在Linux的日常维护管理中,管理员要不停的和Linux的程序安装,升级,卸载打交道,这里面用到最多的两个命令就是rpm和yum,甚至有时候我们还涉及源程序的编译安装,用来更高效利用我们的设备。

Linux上常用的安装和升级工具主要有yum和apt,其中yum能更好的解决rpm的依存性问题,推荐使用yum。默认没有安装yum,需要单独下载并安装.

RPM简介:


RPM 是 Red Hat Package Manager 的缩写,本意是Red Hat 软件包管理,顾名思义是Red Hat 贡献出来的软件包管理;在Fedora 、Redhat、Mandriva、SuSE、YellowDog等主流发行版本,以及在这些版本基础上二次开发出来的发行版采用.

RPM包里面包含可执行的二进制程序,这个程序和Windows的软件包中的.exe文件类似是可执行的;RPM包中还包括程序运行时所需要的文件,这也和Windows的软件包类似,Windows的程序的运行,除了.exe文件以外,也有其它的文件.

一个RPM 包中的应用程序,有时除了自身所带的附加文件保证其正常以外,还需要其它特定版本文件,这就是软件包的依赖关系;依赖关系并不是Linux特有的, Windows操作系统中也是同样存在的;比如我们在Windows系统中运行3D游戏,在安装的时候,他可能会提示,要安装Direct 9 ;Linux和Windows原理是差不多的。

RPM包管理的用途

1、可以安装、删除、升级和管理软件;当然也支持在线安装和升级软件;
2、通过RPM包管理能知道软件包包含哪些文件,也能知道系统中的某个文件属于哪个软件包;
3、可以在查询系统中的软件包是否安装以及其版本;
4、作为开发者可以把自己的程序打包为RPM 包发布;
5、软件包签名GPG和MD5的导入、验证和签名发布;
6、依赖性的检查,查看是否有软件包由于不兼容而扰乱了系统。


yncengine-1.0.2-10.fc10.x86_64.rpm

   syncengine: 软件名称

   1.0.2: 版本号

   10: 发行号或发行标记,可以使用alpha(A)、debug(D)、beta(B)、release(R)四个版本,某些情况也可以使用test(T)

   fc10: 表示对应于Fedor10的发行版的Linux

   x86_64: 系统平台的版本,通常有i386等,如果是noarch则表示对硬件没有级别限制

   rpm: 后缀名称,如果是以.src.rpm为后缀的,说明包中还同时带有软件的原代码


查看本机安装的yum包都有哪些?

   ~]# rpm -qa |grep yum

   安装一个新的rpm 包

   ~]# rpm –ivh yum-3.4.3-125.el7.centos.noarch.rpm     


   配置文件:         

       /etc/yum.conf   为所有仓库提供公共配置

       /etc/yum.repos.d/*.repo 为仓库的指向提供配置

       yum rpm命令_软件包   

cachedir=/var/cache/yum         #yum下载的RPM包的缓存目录
keepcache=0                    存是否保存,1保存,0不保存。
debuglevel=2                   调试级别(0-10),默认为2
logfile=/var/log/yum.log           #yum的日志文件所在的位置
exactarch=1               更新的时候,是否允许更新不同版本的RPM包,比如是否在i386上更新i686的RPM包。
obsoletes=1                    是一个update的参数,具体请参阅yum(8),简单的说就是相当于upgrade,许更新陈旧的RPM包
gpgcheck=1                     是否检查GPG(GNU Private Guard),一种密钥方式签名。
plugins=1                      是否允许使用插件,默认是0不允许,但是我们一般会用yum-fastestmirror  个插件。
installonly_limit=5              允许保留多少个内核包。
exclude=selinux*                #屏蔽不想更新的RPM包,可用通配符,多个RPM包之间使用空格分离。

 

   安装:

    ]#rpm -vih file.rpm

       -i     install 安装

       -v     显示详细信息

       vv     显示更加详细的信息

       -h     使用#显示安装进度

    查询:

    ]#rpm -qa [包名][路径]

    rpm  -q  对软件包查询

     -qa     查询所有软件包

    -qip    查询没有安装过的软件包              +包名称及路径

    -qi     查询已经安装的软件包的详细信息        +包名

     -ql     查询已安装过的软件包位置及安装生成文件    +包名称

    -qlp    查询软件包里面包含哪些文件          +包名称及路径

    -qf     查询某个文件时属于哪个软件包          +包名称及路径

    卸载:

    ]#rpm  -e [包名]

      rpm  -e   包名

    升级:

     ]#rpm  -uvh  file.rpm

      rpm  -uvh  不但可以完成升级还可以完成安装

    -fvh      只可以进行软件的升级

    校验:

    rpm  -V   在校验的时候如果没有提示任何的信息,说明文件没有错误


 yum指令详解


  安装应用程序

    yum install package_name



    yum -y : 自动回答为yes


  重新安装一次,不管是否装过

    yum reinstall package_name 


  *rpm包的更新

 

   检查可更新的rpm包

    #yum check-update

 

   更新所有的rpm包

    #yum update

  

  更新指定的rpm包,如更新kernel和kernel source

  #yum update kernel kernel-source

  

  大规模的版本升级,与yum update不同的是,连旧的淘汰的包也升级

  #yum upgrade

  

  删除rpm包,包括与该包有倚赖性的包

  #yum remove licq

  注:同时会提示删除licq-gnome,licq-qt,licq-text

  yum rpm命令_软件包_02

*yum暂存(/var/cache/yum/)的相关参数

  

  清除暂存中rpm包文件

  #yum clean packages

      

  清除暂存中rpm头文件

  #yum clean headers

  

  清除暂存中旧的rpm头文件

  #yum clean oldheaders

  

  清除暂存中旧的rpm头文件和包文件

  #yum clean或#yum clean all

  注:相当于yum clean packages + yum clean oldheaders

  

  *rpm包列表

  列出资源库中所有可以安装或更新的rpm包

  #yum list

 

  列出资源库中特定的可以安装或更新以及已经安装的rpm包

  #yum list mozilla

  #yum list mozilla*

  注:可以在rpm包名中使用匹配符,如列出所有以mozilla开头的rpm包

 

  列出资源库中所有可以更新的rpm包

  #yum list updates

 

  列出已经安装的所有的rpm包

  #yum list installed

  

  列出以bind开头的所有rpm包

  # yum list all bind*

  

  移除所有以bind开头的所有rpm包

  # yum remove bind*

 

  列出已经安装的但是不包含在资源库中的rpm包

  #yum list extras

  注:通过其它网站下载安装的rpm包

  *rpm包信息显示(info参数同list)

 

  列出资源库中所有可以安装或更新的rpm包的信息

  #yum info

 

   列出资源库中特定的可以安装或更新以及已经安装的rpm包的信息

  #yum info mozilla

  #yum info mozilla*

yum rpm命令_软件包_03

  注:可以在rpm包名中使用匹配符,如列出所有以mozilla开头的rpm包的信息

 

  列出资源库中所有可以更新的rpm包的信息

  #yum info updates

 

  列出已经安装的所有的rpm包的信息

  #yum info installed

 

  列出已经安装的但是不包含在资源库中的rpm包的信息

  #yum info extras

 

  搜索匹配特定字符的rpm包

  #yum search all glibc 

yum rpm命令_应用程序_04

   搜索有包含特定文件名的rpm包

   #yum provides realplay

 

   检查GPG Key

   # rpm -qa gpg-pubkey*

 

   显示Key信息

   #rpm -qi gpg-pubkey-f4a80eb5-53a7ff4b

 yum rpm命令_软件包_05

   删除Key

   #rpm -e gpg-pubkey-e42d547b-3960bdf

   系统更新(更新所有可以升级的rpm包,包括kernel)

   #yum -y update

  

   每天定期执行系统更新

  #chkconfig yum on

  #service yum start

vim /etc/yum.repos.d/CentOS-Media.repo 光盘使用yum安装软件配置文件

vim /etc/yum.repos.d/CentOS-Base.repo  网络使用yum安装软件配置文件