RPM是一个文件包管理

RPM是一个文件包管理程序,它是Linux现在默认的软件包管理器,全称是Redhat Package Manager,缩写为RPM,由Redhat(红帽公司)最先发布,现在基本上所有的Linux以及部分Unix都使用它作为包管理程序。

一、软件包的安装

安装程序包:

rpm [option] /path/to/package_file

-i: 表示安装参数(install)

-v: 表示打印安装过程的详细信息(verbose)

-vv:

-vvv:

-h: 表示在安装包解压过程

组合选项:-ivh

你可以使用-test选项来模拟或者测试一个安装过程,使用该选项使得管理工具并不真正安装该包,仅仅是检查并报告可能发生的冲突。具体命令可以表示如下:

rpm -ivh --test package.rpm

如果依赖于其它包:

1、解决依赖关系

 2、忽略依赖关系

能安装上,但有可能无法运行;

--nodeps

--replacepkgs: 重新安装

如果原有配置文件作了修改,很有可能不执行替换,而是将应该安装生成的配置文件重命名为 .rpmnew

二、软件包的移除

如果希望从系统中移除一个已存在的软件包,可以使用如下命令:

rpm -e package.rpm,这里,选项-e表示移除参数(erase)

为了安全起见,在移除一个软件包之前,你可以模拟移除过程,具体的命令如下:

rpm -e --test package,这里,--test选项表示并不真正移除任何东西,仅仅是测试一下。

同样你可以在移除软件包之前对其进行备份,以便以后进行恢复。具体命令如下:

rpm -e --repackage package

三、软件包的查询

rpm -q package,这里选项-q表示查询参数(query)。在指定包时你可以使用软件包的全名,包括版本和发行号。

查询操作:

1、查询某包是否安装

rpm -q package_name...

2、查询所有已经安装的包

rpm -qa

按条件过滤:rpm -qa | grep ‘PATTERN‘

3、查询包的描述信息

rpm -qipackage_name

4、查询某包安装生成了哪些文件

rpm -ql package_name

(1) 查询某包安装生成了哪些配置文件

rpm -qc package_name

(2) 查询某包安装生成了哪些帮助文件

rpm -qd package_name

(3) 查询程序包的相关脚本

rpm -q --scriptspackage_name

脚本有四类:

preinstall:安装前脚本

postinstall: 安装后脚本

preuninstall: 卸载前脚本

postuninstall: 卸载后脚本

5、查询某文件是由哪个包安装生成的

rpm -qf/path/to/some_file

6、对尚未安装的包执行查询

rpm [option]/path/to/package_file

-qpi

-qpl

-qpc

-qpd

四、升级程序包:

新版本替换老版本

rpm [option] /path/to/package_file

1、升级或安装

-Uvh

2、纯升级

-Fvh

X --> Y-2.2.1

Y-2.2.3

升级后的版本冲突等;

--force: 强制升级

注意:不应该对内核执行升级操作,而是安装,系统允许多内核并存.

五、校验

用于检查包安装生成的文件属性是否发生变化

rpm -V package_name

S file Size differs

M Mode differs (includes permissions and filetype)

5 digest (formerly MD5 sum)differs

D Device major/minor numbermismatch

L readLink(2) path mismatch

U User ownership differs

G Group ownership differs

T mTime differs

P caPabilities differ

六、数据库重建:

数据库目录:/var/lib/rpm

rpm --initdb:初始化

如果事先没有库,会新建一个;如果有,则不新建;

rpm --rebuilddb: 重建

直接重建,覆盖原有的数据库

总结起来,rpm命名常用的选项如下:

  • --version:打印正在使用的rpm的版本号;
  • --quiet:在操作过程中打印尽可能少的信息,通常情况下仅包含错误信息;
  • -v:在操作过程中打印详细信息;
  • -h:在包解压过程中打印50个hash标记;
  • --odeps:不进行依赖性检查;
  • --oldpackage:允许一个旧版本的包来替换现存新版本的包;
  • --prefix NEWPATH:对安装路径进行重新定位;
  • --repackage:在移除文件前对其重新打包;
  • --test:仅对操作进行测试并报告结果。
时间: 2024-10-18 13:51:45

RPM是一个文件包管理的相关文章

RPM(RPM Package Manager)程序包管理工具的常见使用方法

软件包有两种: 二进制格式的软件包和源码程序包. 如何选择适合自己的二进制格式的软件包? 1.根据CPU架构选择软件包 二进制格式的软件包就是已经把源程序转化为CPU所支持的指令集,它可以直接运行的.因为不同架构的CPU指令集不完全一样的.所以二进制格式的 软件包通常会标识适用于那种架构的CPU. CPU 常见平台arch:     1).Power  造价高.性能强劲     2).简化板的 PowerPC     3).UItraSparc     4).x86 功耗低,性能接近服务器级架构

rpm,yum程序包管理器

在早期我们在Linux上安装程序时,都采用的源代码来安装应用程序,这就意味着我们每次都要经过预处理,编译,汇编,链接最后生成可执行的二进制文件:这样的操作太过繁琐,为简化安装步骤,便于广大用户的安装部署程序,程序提供商就在特定的系统上面编译好相关程序的安装文件并进行打包,提供给大家下载,而对这些程序包进行管理的就是程序包管理器: 不同Linux发行版本,就有不同的程序包管理器:在这里列举一些常用的程序包管理器: 在Debian中dpkg工具来管理所有.deb后缀名的包文件:Redhat中就使用最

[9-5]Rpm与Yum安装包管理知识梳理

本文旨在复习Linux上安装包管理rpm与yum工具 知识储备 所谓的包管理是指在Linux平台上查询.校验.安装.升级.卸载以及打包package 不同的Distribution Linux上包管理工具各不相同,最主流的有通吃RedHat/CentOS的RPM.YUM.DNF[新一代的前端管理工具],Debian上的APT管理工具 一个程序包package通用组成部分 二进制程序:/bin, /sbin,/, /usr/bin, /usr/sbin, 库文件:/lib, /lib64, /us

rpm和yum实现程序包管理功能

包管理器的功能:打包,包管理(安装,升级,卸载,查询及验证)   打包:将源码包中的各种组成文件放在一个单一的归档文件中   安装:相当于将打包文件中的各个文件放到对应的目录中去   卸载:将安装的文件收集起来,然后删除   升级:更新已经安装的包,新版本替换老版本   查询:查询程序包的信息   验证:验证包安装后生成的文件是否被改变        Linux常用的包管理器   dpkg:debian 下的包管理器   rpm:redhat package manager    RPM is

rpm和yum程序包的管理

rpm和yum程序包的管理 rpm简介: RPM,是RPM Package Manager(RPM软件包管理器)的缩写,这一文件格式名称虽然打上了RedHat的标志,但是其原始设计理念是开放式的,现在包括OpenLinux.S.u.S.E.以及Turbo Linux等Linux的分发版本都有采用,可以算是公认的行业标准了. 程序包管理: 内核功能:进程管理.内存管理.网络协议栈.驱动程序.... 应用程序:由二进制程序.管理程序文件.配置文件.文档文件.帮助手册文件组成 程序包的组成部分: 二进

Linux运维练习--程序员包管理rpm与yum

程序包管理: 包管理器:作用是打包以及包管理(安装.升级.卸载.查询及校验) 对于不同linux发行版本有不同的包管理器,主要有 deb:debian rpm:redhat package Manager,rpm成为事实上包管理器的标准 程序包的组成部分: 二进制程序:通常存放在以下文件,/bin, /sbin,/ /usr/bin, /usr/sbin,                          库文件:通常存放在以下文件,/lib64, /usr/lib64(64位系统)      

Linux程序包管理:RPM和YUM

Linux程序包管理:RPM和YUM   就像Window一样,我们安装了windows系统如果没有相应的应用软件,如OFFICE,IE,等各种软件,用户是无法使用计算机,linux 完成各种应用功能,也需要各种应用程序,所以程序包的管理就非常必要. Linux平台的内核功能:进程管理.内存管理.网络协议栈.驱动程序....             应用程序:              早期的linux程序包的组成部分:                二进制程序:/bin, /sbin,/ /u

Linux下的rpm命令和yum命令,包管理器的使用

包管理器:打包.包管理(安装.升级.卸载.查询及校验)     deb:debian     rpm:redhat package manager       RPM is Package Manager 程序包的组成部分:     二进制程序:/bin,/sbin,/usr/bin,/usr/sbin     库文件:/lib64,/usr/lib64     配置文件:/etc     帮助文件:manual,info等 包管理器的作用:     打包:一个单一的归档文件中:     安装:

Linux 程序包管理 rpm yum dnf

Linux程序包管理: 包管理器功能:打包,包管理(安装,升级,卸载,查询,校验) 目前Linux中最常见有两种常用工具 deb:debian Linux使用 包括ubuntu rpm:Redhat Package Manager ,Centos等在使用 程序包的组成: 二进制程序:/bin,  /sbin,  /usr/bin, /usr/sbin 库文件: /lib64, /usr/64 配置文件:/etc 帮助文件:manual, info 包管理器: 打包:将源文件,一个一个单一的归档文