`
jiasongmao
  • 浏览: 670880 次
  • 性别: Icon_minigender_1
  • 来自: 石家庄
社区版块
存档分类
最新评论

RPM 管理包

阅读更多

什么是RPM
R PM是一个开放的软件包管理系统,最初的全称是R e d Hat Pack age Manage r。它工作于R e d Hat Linux以及其它Linux系统,成为了Linux中公认的软件包管理标准。红帽子软件公司鼓励其他厂商来了解R PM并在自己的产品中使用它。R PM的发布基于GPL协议。


为什么使用RPM
使用RPM最大的好处在于它提供快速之安装,减少编译安装之侦错困扰。对于最终用户来说,RPM所提供的众多功能使维护系统要比以往容易的多。
安装、卸载和升级RPM软件包均只需一条命令即可完成,所有烦琐的细节问题无须您费心。RPM维护一个所有已安装的软件包和文件的数据库,可以让您进行功能强大的软件包查询和验证工作。
在软件包升级过程中,RPM会对配置文件进行特别处理,因此您绝对不会丢失以往的定制信息——这对于直接使用.tar.gz文件是不可能的。对于程序员,RPM可以让您连同软件的源代码打包成源代码和二进制软件包供最终用户使用。这个过程十分简单,整个过程由一个主文件和可能的补丁程序组成。RPM在软件的新版本发布时,这种“原始”源代码,补丁程序和软件生成指令的清晰描述简化了软件包的维护工作。



RPM的功能
简言之,R PM具有如下五大功能:
安装——将软件从包中解出来,并且安装到硬盘。
卸载——将软件从硬盘清除。
升级——替换软件的旧版本。
查询——查询软件包的信息。
验证——检验系统中的软件与包中软件的区别。


RPM包的名称格式RPM包的名称有其特有的格式,如某软件的RPM包名称由如下部分组成:
name-version.type.rpm
其中:
name为软件的名称
version为软件的版本号
type为包的类型
i[3456]86:表示在Inte l x 86计算机平台上编译的
sparc:表示在sparc计算机平台上编译的
alpha:表示在alpha计算机平台上编译的
src:表示软件源代码
rpm 为文件扩展名



rpm 命令简介
在CentOS中升级和安装系统通常使用下一节讲述的yum命令,因为它可以良好的解决包的

依赖性问题,即自动安装/处理依赖的其他软件包。但是 rpm 命令还是在某些情况下用

得上,比如,查询包信息,安装或卸载一个不在CentOS软件库中的.rpm包等。


rpm -i <.rpm file name>      安装指定的 .rpm 文件
rpm -U <.rpm file name>      用指定的 .rpm 文件升级同名包
rpm -e <package-name>        删除指定的软件包
rpm -q <package-name>        查询指定的软件包在系统中是否安装
rpm -qa                      查询系统中安装的所有RPM软件包
rpm -V <package-name>        校验指定的软件包
rpm -Va                      校验所有已安装的软件包
rpm -qi <package-name>       查询一个已安装软件包的描述信息

rpm -qf </path/to/file>           查询系统中指定文件所属的软件包
rpm -qi <package-name>          查询一个已安装软件包的描述信息
rpm -ql <package-name>         查询一个已安装软件包里所包含的文件
rpm -qc <package-name>         查看一个已安装软件包的配置文件位置
rpm -qd <package-name>            查看一个已安装软件包的文档安装位置
rpm -qR <package-name>           查询一个已安装软件包的最低依赖要求 
rpm -qpi <.rpm file name>           查询一个未安装的 RPM文件的描述信息
rpm -qpl <.rpm file name>           查询一个未安装的 RPM文件里所包含的文件
rpm -qpc <.rpm file name>          查看一个未安装的 RPM文件的配置文件位置
rpm -qpd <.rpm file name>         查看一个未安装的 RPM文件的文档安装位置
rpm -qpR <.rpm file name>         查询一个未安装的 RPM文件的最低依赖要求
rpm -V <package-name>            校验指定的软件包
rpm -V </path/to/file>                校验包含指定文件的软件包
rpm -Vp <.rpm file name>           校验指定的未安装的 RPM文件
rpm -Va                                      校验所有已安装的软件包
rpm --rebuilddb                          重新创建系统的 RPM 数据库,用于不能安装和查询的情况
rpm --import <key file>              导入指定的签名文件
rpm -Kv --nosignature <.rpm file name> 检查指定的RPM文件是否已损坏或被恶意篡改(验证包的MD5校验和)
rpm -K <.rpm file name> 检查指定RPM文件的GnuPG签名

备注:
1.在安装/升级时,还可以使用 -vh 参数,其中:v表示在安装过程中将显示较详细的信息;h表示显示水平进度条。
2.在使用 rpm -qa 命令时,还可以使用 |more 或 |grep 进行过滤。
3.所有的 <.rpm file name > 既可以是本地文件,也可以是远程文件。
4.校验软件包将检查软件包中的所有文件是否与系统中所安装的一致性。包括校验码文件大小,存取权限和属主属性都将根据数据库进行校验。该操作可在用户安装了新程序以后怀疑某些文件遭到破坏时使用。



rpm 命令使用举例

1、安装本地软件包
# rpm -ivh /media/cdrom/CentOS/elinks-0.11.1-5.1.el5.i386.rpm

2、安装远程软件包
# rpm -ivh http://centos.candishosting.com.cn/5/os/i386/CentOS/elinks-0.11.1-5.1.el5.i386.rpm

3、安装不在CentOS软件库中的软件包
下面以安装Fedora Extras中的软件包为例。
# rpm --import http://download.fedora.redhat.com/pub/fedora/linux/extras/RPM-GPG-KEY-Fedora-Extras

# wget http://download.fedora.redhat.com/pub/fedora/linux/extras/6/i386/darcs-1.0.9-3.fc6.i386.rpm
# rpm -ivh darcs-1.0.9-3.fc6.i386.rpm

升级软件包
1、从本地文件升级软件包
# rpm -Uvh elinks-0.11.1-5.1.0.1.el5.i386.rpm

2、从远程文件升级软件包
# rpm -Uvh http://centos.candishosting.com.cn/5/updates/i386/RPMS/elinks-0.11.1-5.1.0.1.el5.i386.rpm


卸载软件包
# rpm -e elinks


查询软件包
# 查询 elinks 软件包在系统中是否安装
$ rpm –q elinks
# 查询系统中已安装的 elinks 软件包的描述信息
$ rpm –qi elinks
# 查询系统中已安装的 elinks 软件包里所包含的文件
$ rpm –ql elinks
# 查询系统中文件 /etc/passwd 所属的软件包
$ rpm –qf /etc/passwd
# 查询 elinks-0.11.1-5.1.0.1.el5.i386.rpm 包文件中的信息
$ rpm –qp elinks-0.11.1-5.1.0.1.el5.i386.rpm
# 查询系统中已经安装的所有包含名字php的软件包
$ rpm –qa | grep php
# 查询 httpd 包的最低依赖要求
$ rpm -qR httpd

 

分享到:
评论

相关推荐

    Linux软件安装rpm包的管理.pdf

    Linux软件安装rpm包的管理主要涵盖安装方式的介绍、rpm包管理、yum工具的使用以及源码包软件的安装这几个方面。在Linux系统中,软件安装方法主要有三种,分别是通过deb包安装、rpm包安装以及源码包安装。具体知识点...

    php 7.2.16 rpm包

    在安装过程中,RPM管理器会自动处理这些依赖关系。如果缺少依赖,需要先安装相应的依赖包。 5. **配置PHP**:安装完成后,需要配置PHP以适应你的Web服务器环境,如Apache或Nginx。这通常涉及到修改`php.ini`配置...

    gcc、openssl rpm文件包

    总的来说,GCC和OpenSSL的RPM文件包是Linux系统管理员的重要工具,它们在系统构建、软件开发和安全通信中发挥着关键作用。理解如何正确管理和使用这些工具对于任何Linux环境的操作和维护都至关重要。

    telnet的rpm包

    `rpm`(Red Hat Package Manager)是用于安装、升级、查询、卸载软件包的一种工具,广泛应用于基于RPM包管理系统的Linux发行版,如Red Hat, CentOS, Fedora等。本文将详细介绍`telnet`服务以及如何使用`rpm`包来管理...

    gcc的rpm包全套

    这个"gcc的rpm包全套"包含了GCC 4.4.7版本的所有相关组件,RPM(Red Hat Package Manager)是Linux发行版如Fedora、CentOS等常用的软件包管理器,它负责软件的安装、升级和卸载。RPM包格式便于管理和维护系统中的...

    tomcat打成rpm包运行.zip

    在IT行业中,尤其是在服务器管理和自动化部署的场景下,将应用程序如Tomcat打成RPM(Red Hat Package Manager)包是一项常见的任务。RPM包是一种在Linux系统中广泛使用的软件包管理格式,它允许用户轻松安装、升级和...

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

    在基于RPM的Linux发行版(如Fedora、CentOS、RHEL等)上,你可以使用包管理器安装它们: bash sudo dnf install rpm-build # 对于Fedora和较新的CentOS/RHEL版本 # 或者 sudo yum install rpm-build # 对于较旧的...

    Ansible RPM包及全部依赖包

    4. `python-setuptools-0.9.8-7.el7.noarch.rpm`:Setuptools是Python的包管理和分发工具,它帮助构建、发布和安装Python软件包,对于安装和管理Ansible的依赖包很有用。 5. `python-paramiko-2.1.1-9.el7.noarch....

    redhat7-yum-rpm完整包.rar

    这个"redhat7-yum-rpm完整包.rar"是为RHEL 7或CentOS 7设计的一个离线安装包集合,它包含了通过YUM(Yellowdog Updater, Modified)进行软件管理所需的所有RPM(Red Hat Package Manager)包。RPM是一种用于安装、...

    vim离线安装rpm包

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

    glibc rpm升级包

    首先,理解RPM是一种包管理工具,它用于安装、升级、查询、验证和删除软件包。RPM包通常包含了软件的源代码、编译后的二进制文件、配置文件以及必要的依赖关系信息。在Linux发行版如Red Hat、CentOS、Fedora等中,...

    php离线rpm包

    通过RPM包,用户可以在没有网络连接的情况下安装PHP,这在服务器管理或资源有限的环境中非常实用。 标题“php离线rpm包”意味着这个压缩文件包含了用于在Linux系统上离线安装PHP的RPM包。这种包通常包含了PHP运行所...

    perl 离线安装rpm包

    然而,如果没有,你可能需要查找并安装缺失的依赖,这可能需要对RPM管理和Linux系统有深入的理解。 总之,Perl在Linux运维和开发中扮演着重要角色,尤其是在处理像PostGIS这样的复杂系统时。离线安装Perl RPM包可以...

    openssh8.9的rpm包

    openssh 是一个安全的网络连接工具,用于在不同的系统之间建立加密的远程登录和其他网络服务。这个"openssh8.9的rpm包"是专为...同时,了解和掌握RPM包管理和openssh的相关知识,对于Linux系统的日常运维至关重要。

    SpringBoot之rpm打包文档.rar

    - RPM包是Linux发行版如CentOS、Fedora等的标准软件包格式,便于分发、管理和更新。 - 将SpringBoot应用打包成RPM,可以方便地在这些系统上进行安装、升级和卸载操作。 3. **RPM打包流程** - 创建.spec文件:这...

    linux telnet rpm 包

    在本场景中,我们讨论的是在Linux环境下利用RPM包来安装和管理`telnet`服务。 首先,我们来看`xinetd`这个包。`xinetd`,即“eXtended Internet Services Daemon”,是一个超级服务器,它可以控制并运行多种网络...

    php7.3.4rpm包和依赖包

    安装过程中,RPM管理器会自动处理依赖关系,确保所有必需的软件包都被正确安装。 安装PHP 7.3.4之后,用户可以配置其与Apache或Nginx等Web服务器集成,以处理PHP脚本。例如,对于Apache,需要安装`mod_php`模块,并...

    PHP PHP7.4.30 程序及常见组合rpm 包打包下载

    1. `php7-fpm-7.4.30-1.1.x86_64.rpm`:这是PHP FastCGI Process Manager (FPM)的扩展,用于管理PHP进程,提供高效地处理PHP脚本的能力,尤其是在高并发场景下。 2. `php7-cli-7.4.30-1.2.x86_64.rpm`:这是PHP的...

Global site tag (gtag.js) - Google Analytics