rpm命令详解

升级:

  • rpm {-U | --upgrade} [general-options] [install-options] PACKAGE_FILES...:升级或安装
  • rpm {-F | --freshen} [general-options] [install-options] PACKAGE_FILES...:仅仅升级
  • 常用:rpm -Uvh PACKAGE_FILE...; rpm -Fvh PACKAGE_FILE...
  • --oldpackage:降级
  • --force:强制升级
  • 注意:
    • 不要对内核做升级操作;Linux支持多内核版本并存,因此,直接安装新版本内核
    • 如果某源程序包的配置文件安装后曾被修改过,升级时,该配置文件不会被覆盖,而是把新版本的配置文件重命名后提供(FILENAME.rpmnew)

卸载:

  • rpm {-e | --erase} [--allmatches] [--nodeps] [--noscripts] [--test] PACKAGE_NAME...
  • --allmatches:卸载所有匹配指定名称的程序包的各版本

查询:

  • rpm {-q | --query} [select-options] [query-options]
  • select-options
    • PACKAGE_NAME:查询指定的程序包是否已经安装,及其版本;
    • -a,--all:查询所有已经安装过的包
    • -f FILE:查询指定的文件由哪个程序包安装生成
    • -p PACKAGE_FILE:对未安装的程序包执行查询操作;
      • 例如:rpm -qpl PACAKGE_NAME,查询程序包安装后会生成哪些文件
    • --whatprovides CAPABILITY:查询指定的CAPABILITY由哪个程序包提供
    • --wahtrequires CAPABILITY:查询指定的CAPABILITY被哪个包所依赖
  • query-options
    • --changelog:查询rpm包的change log
    • -l,--list:程序包安装生成的所有文件列表
    • -i,--info:程序包相关的信息,版本号,大小,所属的包组,等等
    • -c,--configfiles:查询指定的程序包提供的配置文件
    • -d,--docfiles:查询指定的程序包提供的文档
    • --provides:列出指定的程序包提供的所有CAPABILITY
    • -R,--requires:查询指定的程序包的依赖关系
    • --scripts:查询程序包自带的脚本片段

校验:

  • rpm {-V | --verify} [select-options] [verify-options]

   

包来源合法性和完整性验证:

  • 来源合法性验证
  • 完整性验证
  • 获取并导入信任的包制作者的秘药
    • 对于CentOS发行版来说:rpm --import /etc/pki/rpm-gpg/;或者在光盘里有秘药
  • 验证
    • 安装此组织签名的程序时,会自动进行验证操作
    • 手动验证,如下
  • 导入秘药:rpm --import /media/cdrom/RPM-GPG-KEY-CentOS-7;导入秘药后,再安装就不会出现nokey的警告了
  • 手动校验:rpm -K PACKAGE_FILE
  • 发行者加密的方式:先提取特征码,再对特征码进行私钥加密;不涉及保密性,只保证合法性和完整性

数据库重建

  • rpm管理器数据库路径:/var/lib/rpm
  • 查询操作通过此数据库进行
  • 获取帮助
    • CentOS 6:man rpm
    • CentOS 7:man rpmdb
  • rpm {--initdb | --rebuilddb} [--dbpath DIRECTORY] [--root DIRECTORY]
    • --initdb:如果没有就创建一个;有则不执行任何操作
    • --rebuilddb:重新构建,通过读取当前系统上所有已经安装过的程序包进行重新创建

转载于:https://www.cnblogs.com/jacky1982/p/8024976.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值