RPM简述

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

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

一个RPM 包中的应用程序,有时除了自身所带的附加文件保证其正常以外,还需要其它特定版本文件,这就是软件包的依赖关系;依赖关系并不是Linux特有的, Windows操作系统中也是同样存在的;比如我们在Windows系统中运行3D游戏,在安装的时候,他可能会提示,要安装Direct 9 LinuxWindows原理是差不多的。所以被打包的二进制应用程序的组成部分除了二进制文件以外还包括库文件、配置文件(可以实现软件的一些设置)、帮助文件。RPM保留一个数据库,这个数据库中包含了所有的软件包的资料,通过这个数据库,用户可以进行软件包的查询。

RPM包管理的配置文件是rpmrc,可以使用如下命令进行查找

# locate
rpmrc

 可以通过如下命令进行查看

rpm
–showrc

 具体命令:

rpm

   -i –instal 安装

              –test 检测

              –nodeps 忽略依赖性关系直接安装

 

       -v 显示详细信息

       -vv 显示更详细信息

       -h 显示进度

       -ivh rpm包名

       –test: 测试安装,但不真正执行安装,即dry run模式

    –nodeps:忽略依赖关系

    –replacepkgs 已安装过的包重装。

    –replacefiles 其他已安装的RPM包的文件,与即将装的RPM中的文件冲突时,则覆盖文件并安装。

    –nosignature: 不检查来源合法性

    –nodigest:不检查包完整性

    –noscripts:不执行程序包脚本

      %pre: 安装前脚本; –nopre

      %post: 安装后脚本; –nopost

      %preun: 卸载前脚本; –nopreun

      %postun: 卸载后脚本; –nopostun

 

   -Uvh 当有旧的版本的包时,则卸载旧包再装新包,如没有旧包,直接装新包。

   -Fvh 当有旧的包时,卸载旧包装新包,无旧包时,nothing

   –oldpackage 降级  已有新包,装旧包。

   –force 强制安装。–replacepkgs  –replacefiles  –oldpackage

   -q 软件包名  查询已安装过的软件包名。

      -qa 列出所有的已安装过的rpm

           -qa
“name*”

           -qa
|grep name

      -qf 查询一个文件来自于哪一个rpm (已安装的rpm

      -q –changelog 版本更新日志

      -qc 查询软件包的配置文件(不是所有包都有配置文件)

      -qd 查询软件包的帮助文档

      -qi 查询软件包的详细信息

      -ql 查询软件包所安装到系统当中的所有文件路径

      -q –scripts 查询软件包自带的脚本

      -q –provides 查询自身的功能

      -qR 查询实现自身的功能需要什么能力

      -qp[licd] rpm 查看未安装的rpm包的各项信息

 

   -e 软件名

     –nodeps 忽略依赖性。强制卸载

 

    –import GPG-KEY….  导入公钥

    -qa “gpg-pubkey*”   显示所有已导入的公钥

    -e gpg-pubkey….

    -K rpm 验证某rpm签名是否合法

原创文章,作者:poetic snow,如若转载,请注明出处:http://www.178linux.com/84548

(0)
poetic snowpoetic snow
上一篇 2017-08-12 17:08
下一篇 2017-08-12 17:57

相关推荐

  • Ubuntu 葵花宝典入门篇——要练此功,可能得自宫?

        此文章给初入ubuntu的小伙伴们写一篇装机篇和使用心得。第二期会给小伙伴介绍软件安装篇。如题目所说,乌班图确实是葵花宝典,练好了天下无敌。只是如果要安装UBUNTU系统,只是在虚拟机上跑跑是不够的,你必须在实际的桌面环境和服务器环境上才能体会到它的运行方式,而桌面环境和服务器环境几乎差不多。所以安装桌面版可以更好的理解…

    Linux干货 2017-03-26
  • 磁盘管理和文件系统

    磁盘结构 设备文件:关联至一个设备驱动程序,进而能够跟与之对应硬件设备进行通信 一切皆文件:open(), read(), write(), close() 设备类型: 块设备:block,存取单位“块”,磁盘 字符设备:char,存取单位“字符”,键盘 设备号码: 主设备号:major number, 标识设备类型 次设备号:minor number, 标…

    Linux干货 2017-04-23
  • N22第八周作业

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 网桥: 网桥是早期的二层网络设备,每个端口分别有一条独立的交换信道,不是共享一条信道,可隔离冲突域。网桥比集线器(Hub)性能更好,集线器上各端口都是共享同一条信道的,工作于数据链路层。后被端口更多的交换机替代。 集线器: 多端口中继器,工作在物理层,本身不具备识别信号的能力,只…

    Linux干货 2016-10-17
  • redis/twemproxy 客户端连接异常

    对于一个DBA,客户端连接异常问题可以说是家常便饭的事情,处理多了都想吐。 root cause无疑发生在三个地方,先找自身的原因,依次排查下去: 1)服务器端db的负载,如果负载太高,创建socket太慢引起超时。另外服务器端socket的个数太多,也可以导致创建连接需要很长的时间或者创建连接不成功。 2)网络是够有抖动,包括lvs/twemproxy重启…

    Linux干货 2015-04-03
  • 马哥教育网络班21期+第3周课程练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@centos ~]# who | awk '{print $1 $NF}'| uniq -d root(192.168.40.1) derulo(19…

    Linux干货 2016-07-22
  • 第一周作业

    一、计算机的基本组成和功能   cpu包括运算器、控制器、寄存器、缓存       运算器:计算功能,对数据进行加工处理的的部件;       控制器:负责从存储器取出指令,控制cpu计算器之间的运行结果和状态;       寄存器:暂存指令和数据的地方,存储…

    Linux干货 2016-12-04