• rpm包管理工具(常用命令)


    RPM Package Manager (RPM) 是一个强大的命令行驱动的软件包管理工具,用来安装、卸载、校验、查询和更新 Linux 系统上的软件包。

    rpm命令

    rpm包分为软件包和源码包 源码包以.src.rpm后缀

    常用命令

    命令大全参考https://www.cnblogs.com/Daniel-G/archive/2012/11/28/2792630.html

    # 1、查看所有rpm包
    rpm -qa | grep xxx
    # 2、查看文件属于哪个rpm包(遍历所有包看哪个包有这个文件)
    rpm -qf /path/filename
    
    
    # 查看rpm包中的所有文件
    # 1、已安装的软件包:
    rpm -ql $packet_name
    # 2、未安装的软件包:
    rpm -qlp $rpm_filename.rpm # -p可以省略
    
    # 查看rpm包所依赖的包
    rpm -qR $packet_name
    rpm -qRp $rpm_filename.rpm
    
    # 统计安装的包数量
    rpm -qa | wc -l
    # 查看包信息
    rpm -qi $packet_name
    rpm -qip $rpm_filename.rpm
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    # 卸载rpm包
    rpm -e $packet_name
    # 安装rpm包
    rpm -ivh $rpm_filename.rpm
    
    • 1
    • 2
    • 3
    • 4
    # 源码包操作
    rpm --recompile $rpm_filename.rpm # 把源码包解包并编译安装
    rpm --rebuild $rpm_filename.rpm # 在安装完成后把编译后的可执行文件重新打包(亲测用不了,可能是版本问题?)
    
    • 1
    • 2
    • 3

    命令选项

    -q 查询

    -l list 列出包中文件列表和软件所安装的目录

    -i info 查看信息

    -f file 查看哪个包中有这个文件

    -p package 查询没安装的软件包信息(好像一般可以省略)

    -R requires 查询rpm包的依赖

    -s state 状态包括正常,未安装,替换

    –scripts 查看安装脚本

    -c 查询配置文件

    -d 查询安装位置

    -ivh install–verbose–hash 安装并显示进度

    –test 结合-ivh --test 检查依赖,不是真正的安装

    –relocate /=/opt 指定安装的根目录

    –replacepkg 无论是否已安装,强行安装

    –nodeps 忽略依赖,强行安装

    –force 忽略软件包和文件冲突强行安装

    -e erase 卸载

    -Uvh 升级

    –oldpackage 结合-Uvh --oldpackage 新版本降级为旧版本

    rpmrebuild

    # 抽取包文件为cpio格式(类似解压)
    rpm2cpio $rpm_filename.rpm | cpio -div
    
    # 提取rpm包的spec文件
    rpm -e -p $rpm_filename.rpm
    
    • 1
    • 2
    • 3
    • 4
    • 5

    备份已安装的rpm包

    文件变动会有两个选项:1、文件已改动,是否继续 2、是否指定一个新的版本号

    -bb batch跳过选项

    -ba additional是自增版本号

    -e 打开spec编辑(vim)

    -e -p package 一般用来提取rpm包的spec文件

  • 相关阅读:
    LeetCode --- 1518. Water Bottles 解题报告
    代码随想录算法训练营Day 46 || 139.单词拆分、多重背包
    编程方式使用Spring切面
    mysql主从复制1
    Linux内核设计与实现 第四章 进程调度
    充电宝后台被攻击怎么办
    Qt对象树
    hystrix详解
    总结:nginx配置
    记一次G1垃圾回收线上调优的实践
  • 原文地址:https://blog.csdn.net/q863672107/article/details/126473139