RPM使用简介

如转载,请注明出处:http://blog.csdn.net/robinson_0612/archive/2009/10/08/4699969.aspx

 

       RPM全名是RedHat Package Manager,简称为RPM,又称之为RPM软件包管理器,使RedHat套件管理程序之一,类似于Windows控制面板中的添加删除模块,Windows添加删除程序通过将安装信息记录在注册表,以便于程序的更新,卸载。而RPM同样有着类似的功能,用于linux下套件包的安装与管理。

      一、RPM与SRPM简介及功能

      1. RPM:RPM通过采用数据库记录的方式来将所需要的套件安装到Linux系统中。RPM包的格式为*.rpm,RPM包为已经经过编译且包装完成的rpm文件,这是其最大的特点。与我们通用的软件安装类似,在安装所需的套件之前,先根据套件中提供的安装参数检查该套件安装所需的环境,如果系统的环境与套件中所要求的环境相一致(软件包打包时的环境),则可以成功安装,否则会提示报错,或提示其安装依赖属性模块,需预先安装某某套件才可以再安装该套件。成功安装套件后,RPM套件管理器会将所安装的套件包记录到RPM数据库中,以便后续的查询、验证、升级、卸载等。

    

     2. SRPM:与RPM最大的特点相对应,SRPM就是包含了Source code的RPM,即SRPM提供的内容为源码,当然也就没有经过编译。 同时SRPM也提供了参数配置文件(configure与makefile)。想必大家已经知道,它与RPM最大的差异是,在安装套件时需要通过RPM管理器将要安装的套件以RPM管理的方式进行编译,根据系统环境修改参数配置文件,然后将编译好的RPM安装到Linux系统中。由此可以看出SRPM在编译时修改了参数配置文件,无需与当时打包的环境一致,从而降低了对套件包所需的安装环境。

     二、RPM,SRPM包的格式及其说明

     1.RMP与SRPM的格式通常为:

           *.rpm         如:compat-db-4.1.25-9.i386.rpm

            *.src.rpm   如:compat-db-4.1.25-9.i386.src.rpm

        按以上简介可知,compat-db-4.1.25-9.i386.rpm为已经经过编译的文件,compat-db-4.1.25-9.i386.src.rpm则为没有经过编译的文件,通常套件在发行之前,同时提供rpm及srpm文件。

    2. 关于文件中i386,i686的说明:

        i386指这个软件包适用于intel 80386以上的所有x86平台的计算机。
        i686指这个软件包适用于intel 80686以上,即Pentinum II以后Intel 系列的x86平台的计算机,K7以后等级的CPU。
        noarch指这个软件包与硬件架构无关,可以通用。

    3. 套件的文件名及版本:

        如上述compat-db-4.1.25-9说明该套件的名称为compat-db,4.1.25-9为版本信息及发布次数。

 

    三、RPM的查询功能

     1. 格式:[root@localhost ~]# rpm -parameter package_name

         rpm的查询路径: /var/lib/rpm目录下的数据库文件。

         parameter说明:

         -q  : 列出package_name是否已安装到系统中。

         -qa:查询系统中安装的所有的包。

         -ql :查询package_name中所有文件的安装路径。

         -qi :列出package_name中的详细信息,包括开发商,版本,说明等。

         -V  :若package_name被修改过,则将其列出。

     2. 以下我们以在RHEL5.4下安装oracle 10g为例,通过查询所需的软件包来介绍rpm的查询功能。

         Sample 1 :查询某套件是否已安装,如要查询binutils-2.15.92.0.2-13.EL4是否已安装,如下:

         [root@localhost ~]# rpm  -q binutils

         binutils-2.17.50.0.6-12.e15                --表明包binutils 已被成功安装,且列出的版本号高于所要查询的版本。

         [root@localhost ~]# rpm  -q compat-db

         package compat-db is not installed    --表明包compat-db没有被安装到系统中

       

         Sample 2 :查询binutils-2.15.92.0.2-13.EL4的详细信息:

         [root@localhost ~]# rpm  -qi binutils        --结果省略

      

         Sapmle 3 :查询binutils-2.15.92.0.2-13.EL4的所有目录与文件:

         [root@localhost ~]# rpm  -ql binutils       --结果省略

 

    四、RPM的安装卸载功能

         通过RPM查询功能我们可以得到某些软件包是否已安装到系统中以及列出其路径,详细信息等。对于那些没有安装到系统中,且由于相关程序的依赖性,需要将其安装的系统中,我们同样可以通过RPM来完成,格式同上所述,仅仅是给RPM不同的参数而已。当然也可以对其已安装的软件包进行升级或卸载。

     1. 安装软件包。同RPM查询功能中介绍的格式一样,仅仅将parameter改为 ivh 即可。ivh通常组合在一起使用,也可以分开使用。i代表install的意思,v则表示显示更详细的安装信息,h表示显示安装进度。因此本人更倾向于同时使用上述三个参数。

     Sample 1 :安装我们前一节所述的不存在的compat-db包

     [root@localhost ~]# rpm  -ivh compat-db-4.1.25-9    

     这里将安装结果图截屏供大家参考:

    

      可以到Google搜索该软件包,也可以到以下网址下载:http://linuxsoft.cern.ch/cern/slc4X/i386/yum/os/repodata/repoview/compat-db-0-4.1.25-9.html

      当然也可以通过网址来安装该软件包,前提是你的Linux系统能正常连接到Internet。

      如:[root@localhost ~]# rpm  -ivh http://linuxsoft.cern.ch/cern/slc4X/i386/yum/os/compat-db-4.1.25-9.i386.rpm

    

     Sample 2: 同时安装多个软件包,只要在参数ivh后面跟多个软件包即可,请确保路径可以正确找到所需的软件包。

     [root@localhost ~]# rpm  -ivh compat-db-4.1.25-9 compat-libstdc++-296-2.96-132.7.2

    

    2. 更新与卸载软件包

        此处包括更新软件包和卸载软件包,下面分开叙述。

        更新软件包的情况,以下仅提供参数说明,命令格式规范同前所述:

        参数:-Fvh,对于已安装的旧版软件包,系统自动更新,对于没有安装后的后续软件包系统则不会更新。

                 -Uvh,对于已安装的旧版软件包,系统自动更新,对于没有安装后的后续软件包系统直接安装。

       卸载软件包的情况,以下仅提供参数说明,命令格式规范同前所述:

       参数:-e 卸载package_name中指定的软件包。

       注:关于SRPM的使用涉及到编译的过程,在此不作叙述。

时间: 2024-07-28 16:16:17

RPM使用简介的相关文章

Linux (RHEL 5.4)下安装 Oracle 10g R2

如转载,请注明出处:http://blog.csdn.net/robinson_0612/archive/2010/03/30/5431428.aspx           虽然 Oracle 10g Database Release 2 已经推出几年了,但这个版本仍然为很多初学者学习的版本,下面详细讲述了安装 Oracle 10g 的步骤. 一. linux 的版本选用     目前 linux(RHEL) 使用的主要版本为 5.4 版,可以到下面的地址下载其安装文件.        RHEL

VmWare6.5.2下安装RHEL 5.4(配置Oracle安装环境)

如转载,请注明出处:http://blog.csdn.net/robinson_0612/archive/2009/10/04/4632312.aspx   一.安装VmWare       笔者选择的为VmWare6.5.2 workstation绿色版 + Winxp Pro En + sp3 + RHEL 5.4,将VmWare解压至相关目录后,双击绿化.cmd批处理文件,按照提示操作,在配置网络方面依次配置bridge(桥接)相关设置,nat(网络共享)--vmnet8,host-onl

创建ASM实例及ASM数据库

--======================== -- 创建ASM实例及ASM数据库 --========================   一.ASM相关概念     1.什么是ASM(Auto Storage Management)         简称自动存储管理,是一种用于管理磁盘的工具         能够在多个物理设备之间实现条带化.镜像数据文件.恢复文件等         文件按分配单元AUs(allocation units)平衡分布在磁盘组的所有磁盘中,ASM使用索引技术

使用Uniread实现SQLplus翻页功能

    对于经常使用SQLplus的网友来说,SQLplus没有提供类似DOS工具的翻页功能,故不能实现SQL语句的来回翻动.现在我们有了Uniread, 减轻了代码的反复输入的工作量,真是让人大快人心.下面是安装方法. 一.所需的安装文件(你可以Google这些文件,或给本人留言留下Email)        IO-Tty-1.07.tar.gz        Term-ReadLine-Gnu-1.16.tar.gz        uniread-1.01.tar.gz 二.查看刚刚下载的安

解压rpm包的linux命令及rpm命令使用简介_linux shell

rpm 是红帽(RedHat)软件包管理工具,实现类似于 Windows 中的添加/删除程序功能 rpm -ivh install_rpm tar xvf informix-linux.tar inux下解压命令大全 .tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) --------------- .gz 解压1:gunzip FileName.gz 解压2:gzip -d FileName

Linux Sys Monitor 运维插件 RPM 应用程序简介

RedHat应用程序,简称rpm程序. 您在安装操作系统时,向导就会让您安装过一些应用程序. 这些程序在您的安装光盘的rpm目录中,它们后缀都是.rpm. A:我们可以用rpm -ivh *.rpm 来安装各种rpm程序. 用rpm -qa 来查已经安装的rpm程序. B:这么简单我们都会. A:如果要安装一堆软件呢? B:写个批处理脚本就搞定了. A:写脚本累吗? B:不累. A:好吧,你赢了. 楼主疯了,自言自语. 为了方便您操作,在插件tab页中提供了一些工具. 它们与系统监控类型无关.

linux rpm简介及应用

RPM 是 Red Hat Package Manager 的缩写,本意是Red Hat 软件包管理,顾名思义是Red Hat 贡献出来的软件包管理:在Fedora .Redhat.Mandriva.SuSE.YellowDog等主流发行版本,以及在这些版本基础上二次开发出来的发行版采用: RPM包里面都包含什么?里面包含可执行的二进制程序,这个程序和Windows的软件包中的.exe文件类似是可执行的:RPM包中还包括程序运行时所需要的文件,这也和Windows的软件包类似,Windows的程

类似rpm包管理器的Windows Installer PowerShell Module简介_PowerShell

一.Windows Installer PowerShell Module简介 Windows Installer PowerShell Module是一个开源项目,存放在微软的开源项目网站CodePlex上,下面是其主页上项目描述. 复制代码 代码如下: Project Description Exposes Windows Installer functionality to PowerShell, providing means to query installed product and

第一天 简介、安装和目录管理命令

目录: 第一章 Linux简介 一 UNIX发展史 二 常见Unix 三 Linux发展史 四 常见的Linux 五 Linux特点 六 Linux应用领域 第二章 Linux安装 一 虚拟机使用 二 安装方式 三 分区 第三章 Linux常用命令 一 linux命令的格式 第一章 Linux简介 一 UNIX发展史 1.1965年,美国麻省理工学院(MIT).通用电气公司(GE)及AT&T的贝尔实验室联合开发Multics工程计划,其目标是开发 一种交互式的具有多道程序处理能力的分时操作系统,