centos7 RPM包之rpm命令

2023-10-27

RPM包与源码包的区别

1、软件包分类

  • 源码包:C源代码包

  • rpm包:编译之后的二进制包

2、源码包

  • 优点:开源;可以自由选择所需功能;可看源代码;卸载方便(直接删除安装位置);

  • 缺点:安装步骤过多;编译时间过长;

3、RPM包

  • 优点:使用简单,只需要几个命令就可以实现包的安装、升级、查询、卸载;安装速度快;
  • 缺点:不能看源代码;功能选择不如源代码灵活;依赖性;

RPM包命名和依赖性

1、RPM包的命名规则

httpd-2.4.6-67.el7.centos.x86_64.rpm
httpd 软件包名
2.4.6 软件版本
67 软件发行的次数
el7.centos 适合的linux平台
x86_64 适合的硬件平台
rpm rpm包扩展名

2、RPM包的依赖性

  • 树形依赖性:a -> b -> c,即a依赖b,b依赖c
  • 环形依赖:a -> b -> c -> a
  • 模块依赖:模块依赖查询网站:www.rpmfind.com

RPM包的安装、升级、卸载和查询

1、包全名和包名

包全名 包名
例如:httpd-2.4.6-67.el7.centos.x86_64.rpm 例如:httpd
操作的包时没有安装的软件包时,使用包全名 操作的已经安装的软件包时,使用包名
安装、升级时用 查询、卸载时用

2、RPM安装

#rpm包的安装格式

rpm -ivh 包全名
选项:
    -i(install)    安装
    -v(verbose)    显示详细信息
    -h(hash)       显示进度
    --nodeps       不检测依赖性

举例:

[root@localhost Packages]# rpm -ivh httpd-2.4.6-67.el7.centos.x86_64.rpm 

可能会有很多依赖性问题出现,根据一个个依赖性继续rpm安装就可以了

3、RPM包升级

#RPM包的升级格式

rpm -Uvh 包全名
选项:
    -U (upgrade)    升级

过程和安装完全一样。

4、RPM包的卸载

#RPM包的卸载格式

rpm -e 包名
选项:
    -e (erase)    卸载
    --nodeps      不检测依赖性

举例:

[root@localhost Packages]# rpm -e httpd
错误:依赖检测失败:
        httpd = 2.4.6-67.el7.centos 被 (已安裝) httpd-devel-2.4.6-67.el7.centos.x86_64 需要
[root@localhost Packages]# rpm -e httpd-devel 
[root@localhost Packages]# rpm -e httpd

注:卸载要按照安装依赖性的反向卸载

5、RPM包的查询

  • 查询是否安装:
[root@localhost ~]# rpm -q 包名
#查询包是否安装
选项:
    -q    查询(query)

[root@localhost ~]# rpm -qa
#查询所有已经安装的RPM包
选项:
    -a    所有
  • 查询软件包的详细信息:
[root@localhost ~]# rpm -qi 包名
#查询软件包的详细信息
选项:
    -i    查询软件信息(information)
  • 查询包中文件安装位置
[root@localhost ~]# rpm -ql 包名
#查询包中文件安装位置
选项:
    -l    列表(list)
  • 查询系统文件属于哪个RPM包
[root@localhost ~]# rpm -qf 系统文件名
选项:
    -f    查询系统文件属于哪个RPM包(file)
  • 查询软件包的依赖性
[root@localhost ~]# rpm -qR 包名
选项:
    -R    查询软件包的依赖性(requires)

RPM包之yum命令请看另一篇:
http://blog.csdn.net/capecape/article/details/78534443

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

centos7 RPM包之rpm命令 的相关文章

  • 具有多个位置指令和子域的 nginx

    我正在尝试在 nginxconf 中实现类似的东西 子域 sub domain com gt 提供 html sub domain com api gt 代理到端口 3001 sub domain com viewer gt 提供另一个 h
  • Maven RPM 插件不生成指定的 scriptlet

    我正在尝试在 rpm maven plugin 的帮助下创建一个 rpm 包 一切顺利 直到我尝试让它生成 pre scriptlet 或任何与此相关的 scriptlet pom xml 摘录如下
  • 无法获得 D-Bus 连接:不允许操作

    我正在尝试在 docker centos7 映像上安装 ambari 2 6 但在 ambari 设置步骤中以及在初始化 postgresql 数据库时 我收到此错误 无法获得 D Bus 连接 不允许操作 每次我尝试在 Docker 映像
  • 如何在 CentOS 7 中安装 pip?

    CentOS 7 EPEL 现在包含 Python 3 4 yum install python34 然而 当我尝试这样做时 即使 Python 3 4 安装成功 它似乎也没有安装 pip 这很奇怪 因为pipPython 3 4 应该默认
  • 配置文件的 Rpm 升级处理

    我正在使用 rpm upgrade 命令 并注意到 rpm 有不同的方式来处理修改的配置文件 因此它不会在升级过程中丢失 据我了解 如果修改了配置文件并使用 rpm U 升级了软件包 rpm 会将原始属性文件重命名为 file rpmsav
  • tcsh 脚本不退出

    我正在运行 CentOS 7 并且 tcsh 脚本出现问题 我有一个名为 quittest 的简单脚本 bin tcsh echo Simple Test exit 0 当我从终端运行 quittest 时 我得到 Simple Test
  • 我构建的 Python RPM 无法安装

    因为我必须在通过 kickstart 进程构建的多个 Oracle Linux 服务器上安装多个版本的 Python 所以我想为我们的 yum 存储库构建一个 python rpm 我能够使用 make altinstall 手动构建Pyt
  • 无法安装 phpMyAdmin 错误:php71w-common 与 php-common-5.4.16-43.el7_4.1.x86_64 冲突

    我刚刚安装了 CentOS 7 和 PHP 7 1xx 和 MySQL 但无法安装 phpMyAdmin 我有一条错误消息 但在 Google 上没有答案 是的 只有一个答案 但它本身给了我相同的错误消息 rpm iUvh http dl
  • Google Cloud Compute 上的多个 IP 地址

    我正在尝试使用多个内部 IP 地址设置基于 CentOS 7 的虚拟机 但它似乎并不像 Amazon AWS 那样简单 您可以使用路由为虚拟机添加内部 IP https cloud google com compute docs refer
  • Rpm 构建限制

    我是 rpm 打包的初学者 据我了解 由于 cpio 限制 rpm build 在文件大小 gt 4GB 时存在问题 因此 我使用 gnu split 将包中的大文件拆分为 512MB 的文件 这是作为 rpmbuild 的一部分完成的 因
  • 安装 hunspell 包

    我期待使用 pip 安装 hunspell 包 但它会抛出以下错误 Collecting hunspell Using cached hunspell 0 4 1 tar gz Building wheels for collected p
  • 大文件上传时出现 Apache 错误 500 (mod_security)

    据我所尝试 通常的解决方案都不适合我 好吧 我的问题是 每次上传 大文件 600 KB 时 我都会收到 500 错误 而较小的图像则可以正常工作 所以 即使使用这个 极端 htaccess 文件 它仍然会发生 是的 htaccess 是活动
  • 尝试在 openSUSE 上安装 pip 时出错

    我正在尝试部署pip在我的生产服务器上 但有一个不合逻辑的错误 它尝试安装已安装的组件但没有成功 gt sudo zypper in python pip Loading repository data Reading installed
  • rpm %config(noreplace) 用 %config 覆盖

    在我的 rpm 中 我有一个完整的目录 我想用 config noreplace 标记它 该目录中有一个文件 我想在每次安装时使用 config 中的语义将其替换为最新的 rpm 使用此处的指南 http www uxsup csx cam
  • Docker 错误:仅允许一个“主机”网络实例[重复]

    这个问题在这里已经有答案了 我正在尝试运行一个容器 其中我需要将网络驱动程序用作 主机 而不是 桥接器 我在 Centos 机器上运行它 我的 docker compose yml 是 version 3 4 services testCo
  • HRegionServer 显示“错误告诉主机我们已经启动”。显示套接字异常:参数无效

    我正在尝试在 3 台 centos 机器上创建一个 hbase 集群 Hadoop v 2 8 0 已启动并在我配置的 HBase v 1 2 5 上运行 Hbase 启动正常 它启动了 HMaster 和区域服务器 但仍然在区域服务器和
  • 如何让 rpmbuild 下载特定 .spec 的所有源代码?

    我正在向现有 rpm 添加一些源 spec通过 URL 文件 但尚未下载 有没有办法得到rpmbuild下载源代码而不是手动执行 The spectool https www unix com man page centos 1 spect
  • Linux 桌面快捷方式和安装图标

    我需要添加什么到我的 spec文件来创建桌面快捷方式并在安装过程中为快捷方式分配一个图标 rpm 如果需要脚本 一个示例将非常有帮助 您在 Linux 下使用 desktop 文件作为图标 图标放置的位置取决于您使用的发行版和桌面环境 由于
  • 为什么“git pull”在我的网络服务器上失败?

    我使用 git 来提取站点代码库的更改 文件内部的更改和文件删除是有效的 但是 当我将新文件或目录 不是空的 添加到存储库时 它不会被本地拉到网络服务器 拉动时不会显示错误消息 但在检查该文件时 它不在那里 在线的 bitbucket re
  • 写入 cgroup 参数 cpu.rt_runtime_us 时出错

    我正在尝试修改 cgroup 中 docker 容器进程的实时运行时参数 我正在关注这个教程 http www breakage org 2014 08 22 using sched fifo in docker containers on

随机推荐

  • 计算机网络笔记第四章传输层

    四 传输层 1 传输层服务 1 服务和协议 服务和协议的目的是让不同主机之间应用进程之间的逻辑通信 传输协议 TCP UDP 运行于终端系统 可能使用多个协议 发送端 应用层报文划分成分段 分解 向下交互给网络层 接收端 重组成报文 向上交
  • [苹果开发者账号]08 苹果App Store定价机制升级引起的问题

    目录 1 问题 2 排查 3 原因 1 问题 周一的时候 突然运营部门的同事 通过工单向开发部门反应 苹果手机用户使用我们的app产品付款时 有多付款的现象 1098元却付款成了1198元 额外多付款了100元 2 排查 app产品因为是虚
  • Git操作

    目录 Git简介 git使用 流程 核心总结 安装 基础命令 编辑 查看仓库状态 工作区操作 工作区内容提交到暂存区 提交暂存区内容到版本库 git log 和git reflog的区别 git reset hard mix soft的区别
  • 华为OD机试 - 转骰子(Java)

    题目描述 骰子是一个立方体 每个面一个数字 初始为左1 右2 前3 观察者方向 后4 上5 下6 用123456表示这个状态 放置在平面上 可以向左翻转 用L表示向左翻转1次 可以向右翻转 用R表示向右翻转1次 可以向前翻转 用F表示向前翻
  • (2023)ConKI: Contrastive Knowledge Injection for Multimodal Sentiment Analysis

    一 整体部分 话不多说 先上整体框架图 同样的和大多数做法一样 对于文本模态 用Bert提取 音频和视频使用transformer提取特征 这里创新的一点是 通过知识注入适配器Adapter将外部知识注入到每个模态 称为特定知识 再和特征提
  • SQLServer数据库 附加数据库时出错;有关详细信息,请单击“消息”列中的超链接的处理方式

    在SQL Server 数据库中附加数据库时出错 这是由于权限的问题 找到数据库所在文件或文件件 我的数据库文件放到了 新建文件夹 2 中了 所以 我设置下这个文件夹的权限 1 点击右键 选中属性 2 点击安全 编辑 添加 高级 立即查找
  • 将hexo项目部署到github

    个人博客预览点击这里 搭建以及优化hexo项目点击这里 一 在github新建一个仓库 二 安装插件来实现一键部署 三 在项目根目录下的 config yml配置文件末尾做如下修改 四 推送到github仓库 一 在github新建一个仓库
  • linux下jps命令找不到的问题 bash: jps: 未找到命令... --- 记录

    jps是用来查看进程的命令 常常要用jps来查看名称服务是否已启动 但是某些机器报错如下 bash jps command not found 解决办法如下 一 检查基础配置 which Java java version 如果指向的是1
  • MySQL 事务 学习

    MySQL 事务 学习 事务 事务 ACID原则 原子性 一致性 隔离性 持久性 原子性 Atomicity 要么都成功 要么都失败 一致性 Consistency 事务前后的数据完整性要保持一致 隔离性 Isolation 每个事务之间相
  • ThreadLocal 的工作原理

    ThreadLocal 是线程的内部数据的存储类 通过它可以在指定线程中存储数据 数据存储以后只有在指定的线程中才能获取到对应的存储的数据 其他线程无法获取到数据 下面通过一个小块代码来分析一下它的使用 private ThreadLoca
  • C++替换string中的\“为“

    1 背景 有一个项目需要我解析后台服务器返回的XML数据 但是因为后台Http接口返回的数据包是Json XML只是其中的一部分 如下图所示 可见 XML数据中 节点的属性数据都是 这实际上是不符合XML规范的 也就无法正常解析 需要我自己
  • 原数组转稀疏数组,稀疏数组转原数组,稀疏数组写入磁盘,从磁盘恢复原数组

    代码实现 import java io BufferedReader import java io File import java io FileReader import java io FileWriter import java u
  • JavaScript 也可以面向对象

    由于js语言本身语法的灵活性 使得在js程序中出现了各种各样的代码风格 但也因为如此 导致了代码的可读性和可维护性大大降低 特别随着项目的不断更新 js代码的不断更新 到后期时甚至连自己的代码都不知然了 因此确定一种好的代码风格是很有必要的
  • FTP,Telnet,SMTP,DNS,TFTP,WWW,POP采用的是TCP协议还是UDP协议?各自默认的端口号是多少?

    FTP 采用TCP协议 默认端口21 TELNET采用TCP协议 默认端口23 SMTP采用UDP协议 默认端口25 DNS采用UDP协议 默认端口53 TFTP采用UDP协议 默认端口69 WWW采用TCP协议 默认端口80 POP采用T
  • C++函数重载 (初学)

    恶补C 中 看视频学到了函数重载 放一些笔记以备后面回顾 函数重载规则 1 函数名相同 2 参数个数不同 参数的类型不同 参数个数不同 参数顺序不同 均可构成重载 3 返回值类型不同则不可以构成重载 如 int p int a 和 floa
  • 【信息收集】指纹识别

    一 指纹识别介绍 指纹收集是信息收集非常重要的一个环节 通常包括系统 中间件 web程序 防火墙四个方面 比如在web程序指纹中的cms识别可以直接查找已有的漏洞进行利用 其他方面也都有助于下一步的攻击操作 先来几个在线工具 yunsee
  • Vue自定义指令 传递参数

    在项目开发过程中 难免会遇到各种功能需要使用Vue自定义指令 directive 去实现 关于directive的使用方式这里就不做过多的介绍了 Vue官方文档中说的还是听明白的 今天讲讲在使用Vue自定义指令过程中 1 怎么数据传递到自定
  • Idea 设置类和方法的注释(获取参数)

    Idea 添加注释 类注释 方法注释 类注释 方法注释 类注释 File Setting Editor File and Code Templates Class 注释模板 description author fqtang time DA
  • nginx下location的root和alias指令配置总结

    Nginx配置中location root和alias的关系一直很让人困惑 查询好多资料也没能搞明白 于是自己进行了实际操作 总结如下 1 root指令 说明 在location和root上 后面可以带 也可以不带 效果一样 tree da
  • centos7 RPM包之rpm命令

    RPM包与源码包的区别 1 软件包分类 源码包 C源代码包 rpm包 编译之后的二进制包 2 源码包 优点 开源 可以自由选择所需功能 可看源代码 卸载方便 直接删除安装位置 缺点 安装步骤过多 编译时间过长 3 RPM包 优点 使用简单