`
xinyonda
  • 浏览: 6116 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

RPM包的安装(转载)

 
阅读更多
RPM软件包的一个例子:
foo-1.0-1.i386.rpm
其中包括软件包的名称(foo),版本号(1.0),发行号(1),和硬件平台(i386)。
(1)安装
# rpm -ivh foo-1.0-1.i386.rpm
foo
#######################
A. 软件包已被安装
  # rpm -ivh foo-1.0-1.i386.rpm
    foo      package foo-1.0-1 is already installed
   error: foo-1.0-1.i386.rpm cannot be installed
如果你仍旧要安装该软件包,你可以在命令行上使用--replacepkgs 选项,这将忽略该错误信息。
B. 文件冲突
如果要安装的软件包中有一个文件已在安装其它软件包时安装,会出现以下错误信息:
# rpm -ivh foo-1.0-1.i386.rpm
    foo   /usr/bin/foo conflicts with file from bar-1.0-1
   error: foo-1.0-1.i386.rpm cannot be installed
要想让RPM 忽略该错误信息, 请使用--replacefiles 命令行选项
C.未解决依赖关系
RPM软件包可能依赖于其它软件包, 在安装了特定的软件包之后才能安装该软件包。
    # rpm -ivh bar-1.0-1.i386.rpm
     failed dependencies:
             foo is needed by bar-1.0-1
你必须安装完所依赖的软件包,才能解决这个问题。如果想强制安装 (但是,这样安装后的软件包未必能正常运行),请使用-nodeps 命令行选项。
(2) 卸载
   # rpm -e foo
注意:这里使用软件包的名字foo,而不是软件包文件的名字“foo-1.0-1.i386.rpm”.
如果其它软件包依赖于你要卸载的软件包,卸载时则会产生错误信息。如:
     # rpm -e foo
      removing these packages would break dependencies:
             foo is needed by bar-1.0-1
要想RPM忽略该错误信息继续卸载的话 (但是,依赖于该软件包的程序可能无法运行), 请使用-nodeps 命令行选项。
(3)升级
    # rpm -Uvh foo-2.0-1.i386.rpm
     foo
     ###############################
当使用旧版本的软件包来升级新版本的软件时,会产生以下错误信息:
     # rpm -Uvh foo-1.0-1.i386.rpm
     foo    package foo-2.0-1 (which is newer) is  already installed
     error: foo-1.0-1.i386.rpm cannot be installed
要使RPM 坚持这样“升级”,可使用--oldpackage 命令行参数。
(4)查询
   # rpm -q foo
       foo-2.0-1
软件包指定选项:
     -a   查询所有已安装的软件包.
     -f    ; 将查询包含有文件;的软件包
     -p  ;
     查询软件包文件名为;的软件包
信息选择选项:
     -i 显示软件包信息,如描述, 发行号, 尺寸, 构建日期, 安装日期, 平台, 以及其它各类信息。
     -l 显示软件包中的文件列表。
     -s 显示软件包中所有文件的状态。
     -d 显示被标注为文档的文件列表(man 手册, info 手册, README’s, etc).
     -c 显示被标注为配置文件的文件列表。这些是要在安装完毕以后加以定制的文件(sendmail.cf, passwd, inittab, etc)。
对于那些要显示文件列表的文件,可以增加-v 命令行选项以获得如同 ls -l 格式的输出。
(5)验证
验证软件包是通过比较软件包中安装的文件和软件包中的原始文件信息来进行的。除了其它一些东西,验证主要是比较文件的尺寸, MD5 校验码, 文件权限, 类型, 属主和用户组等。
    rpm -V命令用来验证一个软件包,如
     rpm -V foo 
验证包含特定文件的软件包:
          rpm -Vf /bin/vi
    验证所有已安装的软件包:
          rpm -Va
根据一个RPM来验证某个软件包:
          rpm -Vp foo-1.0-1.i386.rpm
    如果你担心RPM数据库已被破坏,就可以使用这种方式。如果一切校验均正常将不会产生任何输出。如果有不一致的地方,就会显示出来。
     输出格式是8位长字符串,c 用以指配置文件,接着是文件名. 8位字符的每一个用以表示文件与RPM数据库中一种属性的比较结果。“.” (点)表示测试通过。
以下字符表示某种测试的失败:
5      MD5 校验码
S      文件尺寸
L      符号连接
T      文件修改日期
D      设备
U      用户
G      用户组
M     模式e (包括权限和文件类型)
  如果有信息输出,应当认真加以考虑,是删除,重新安装,还是修正出现的问题。
(6)RPM应用的几个例子
A. 如你误删了一些文件, 但是不能肯定到底删除了哪些文件。如果你想验证一下整个系统看看都丢失了哪些文件的话,可以键入:
          rpm ?Va
B.若是一些文件丢失了或已被损坏, 就可以重新安装或先卸载再安装该软件包。如果碰到了一个自己不认识的文件,要想查处它属于哪个软件包,可以输入以下命令:
          rpm -qf /usr/X11R6/bin/xjewel
    而输出的结果会是:
          xjewel-1.6-1
C. 如果发生综合以上两个例子的情况,如文/usr/bin/paste出了问题。你想验证一下拥有该文件的软件包,可又不知道软件包的名字,这时可以简单的键入:
          rpm -Vf /usr/bin/paste
    这样相应的软件包就会被验证。
D. 如果你想了解一个正在使用的程序的详细信息,可以键入如下命令来获得拥有该程序的软件包中的文档信息:
          rpm -qdf /usr/bin/ispell
   输出结果为:
          /usr/man/man4/ispell.4
          /usr/man/man4/english.4
            …………………………………………………………
E. 如果你发现了一个新的koules RPM,但是不知道它是什么东西,可以键入如下命令:
          rpm -qip koules-1.2-2.i386.rpm
F. 现在你想了解koules RPM 所安装的文件。可以键入:
          rpm -qlp koules-1.2-2.i386.rpm
图形管理工具:kpackage
分享到:
评论

相关推荐

    rpm包安装htpasswd所需包

    rpm包安装htpasswd所需包rpm包安装htpasswd所需包rpm包安装htpasswd所需包rpm包安装htpasswd所需包rpm包安装htpasswd所需包rpm包安装htpasswd所需包rpm包安装htpasswd所需包rpm包安装htpasswd所需包rpm包安装...

    gcc_rpm包安装及安装顺序

    在Linux系统中,GCC(GNU Compiler ...以上就是关于“gcc_rpm包安装及安装顺序”的详细内容,希望对你的工作有所帮助。在实际操作中,务必注意系统的具体环境和版本,以及软件仓库的可用性,以确保安装过程的顺利进行。

    rpm包安装相关命令

    ### rpm包安装相关命令详解 在Linux环境中,`rpm`(Red Hat Package Manager)是管理软件包的强大工具,它不仅支持软件包的安装、卸载、升级,还提供了丰富的查询功能。以下是对rpm命令中涉及的关键操作的深入解析...

    perl 离线安装rpm包

    在离线安装场景中,Perl RPM包对于那些没有互联网连接或者需要在安全环境中部署软件的用户尤其重要。本文将详细介绍如何在CentOS系统上离线安装Perl RPM包,以及它在PostGIS安装过程中的作用。 首先,让我们了解...

    vim离线安装rpm包

    针对“vim离线安装rpm包”这个主题,我们将详细讲解如何在Linux系统中通过rpm命令来实现vim的离线安装,以及相关的重要知识点。 首先,RPM(Red Hat Package Manager)是Linux下广泛使用的软件包管理器,它负责软件...

    suse离线安装gcc的rpm包

    在描述中提到的"根据我的另一篇文章的安装顺序进行安装",这暗示了安装GCC时可能涉及多个步骤,每个步骤可能对应一个或多个RPM包。在安装前,你需要确保已经正确地获取了所有必需的RPM包,这些包通常包含了GCC的源...

    php 7.2.16 rpm包

    通过RPM包,用户无需手动编译源代码,可以方便地进行安装、升级和卸载操作。 PHP(Hypertext Preprocessor)是一种广泛使用的开源服务器端脚本语言,尤其适用于Web开发。PHP 7.2系列是PHP的一个重要分支,引入了...

    centos7.8 离线安装telnet rpm包

    centos7.8 离线安装telnet rpm包

    安装keepalived确实的rpm包

    安装keepalived时缺少的一些包,收集起来共享,包括 autoconf-2.63-5.1.el6.noarch.rpm automake-1.11.1-1.2.el6.noarch.rpm cluster-glue-1.0.5-2.el6.i686.rpm cluster-glue-libs-1.0.5-2.el6.i686.rpm cluster-...

    CentOS 7 离线安装 Python 3 需要的 rpm 包

    4. **安装依赖**:使用 `yum install -y 文件名.rpm` 命令逐个安装 rpm 包。首先安装依赖库,如 `libffi`, `openssl`, `zlib` 等,然后安装 Python 3 主体和开发库。 5. **确认安装**:安装完成后,通过 `python3 --...

    Linux RPM 包安装

    - `rpm -qf /root/install.log`:查询哪个RPM包安装了`/root/install.log`文件。 **4. 查询未安装的RPM包信息** - `rpm -qp jdk-1_5_0-linux-i586.rpm`:查询未安装的`jdk-1_5_0-linux-i586.rpm`包的信息。 - `rpm...

    Linux安装SNMP服务所需要rpm包

    本文将详细介绍在Linux上安装SNMP服务所需的RPM包以及相关配置步骤。 首先,我们需要理解RPM(Red Hat Package Manager)是Linux发行版如CentOS、Fedora、RHEL等使用的软件包管理系统,它负责软件的安装、升级和...

    离线安装NFS服务相关rpm包

    离线安装NFS服务相关rpm包是针对没有互联网连接或者网络安全限制的环境而设计的,它涉及到了软件包管理、网络配置以及服务启动和管理等多个方面。 首先,了解NFS服务的基本组件。在CentOS中,NFS服务主要由以下几个...

    gcc 8.5 rpm 离线安装依赖包

    标题中的“gcc 8.5 rpm 离线安装依赖包”指的是在Linux系统中,特别是CentOS这样的发行版上,使用GCC(GNU Compiler Collection)的8.5版本的RPM包进行离线安装的过程。GCC是开源的、跨平台的编译器集合,它包含了C...

    CentOS 7安装httpd所需RPM包

    CentOS 7安装httpd所需RPM包

    离线安装nginx所需要的rpm包

    3. **安装RPM包**:使用`rpm`命令逐个安装RPM包,按照依赖关系顺序安装。一般来说,先安装pcre、openssl和zlib,最后安装Nginx。命令格式如下: ``` rpm -ivh pcre-x.x.x-xxxx.el7.x86_64.rpm rpm -ivh openssl-...

    安装gcc需要的相关rpm包

    安装gcc需要的相关rpm包: cloog-ppl-0.15.7-1.2.el6.x86_64.rpm cpp-4.4.7-3.el6.x86_64.rpm gcc-4.4.7-3.el6.x86_64.rpm glibc-2.12-1.107.el6.x86_64.rpm glibc-common-2.12-1.107.el6.x86_64.rpm glibc-devel-...

    rpm包安装chkrootkit所需要的所有依赖和chkrootkit包

    在无外网的情况下无法yum安装时,使用rpm包安装chkrootkit 1.tar -zxvf chkrootkit.tar.gz 2.cd chkrootkit 3.rpm -ivhU *.rpm --nodeps --force 4.tar -zxvf chkrootkit.tar.gz 5.chkrootkit-0.57 6.make sense 7.cp...

    用openssh9.8源码包,制作rpm包

    要使用OpenSSH 9.8的源码包制作RPM包,你需要遵循一系列步骤,包括安装必要的工具、准备源码、编写RPM规范文件(spec file),然后构建RPM包。以下是一个基本的指南: 1. 安装必要的工具 首先,确保你的系统上安装...

    postgresql9.5+postgis2.2rpm包离线安装

    centos7 postgresql9.5+postgis2.2rpm包离线安装,无需编译

Global site tag (gtag.js) - Google Analytics