RPM包管理-rpm命令管理

news2024/11/19 13:28:10

1.RPM包命令原则

所有的rpm包都在光盘中

例:httpd-2.2.15-15.e16.centos.1.i686.rpm

httpd                软件包名

2.2.15              软件版本

15                    软件发布的次数

e16.centos       适合的Linux平台

i686                  适合的硬件平台

rpm                   rpm包扩展名

 2.RPM包依赖性

树形依赖:a -> b -> c

安装先装c再装b最后装a;卸载先卸载a再卸载b最后卸载c

环形依赖:a ->b -> c -> a

模块依赖:模块依赖查询网站:www.rpmfind.net

2.rpm命令管理-安装升级与卸载

2.1包全名与包名

包全名:操作的包是没有安装的软件包时,使用包全名。而且要注意路径。一般是安装和升级时使用

包名:操作已经安装的软件包时,使用包名。时搜索/var/lib/rpm/中的数据库。一般是查询卸载使用

2.2RPM安装

rpm -ivh 包全名

选项:

        -i(install)             安装

        -v(verbose)        显示详细信息

        -h(hash)            显示进度

        --nodeps                 不检测依赖性

例:安装httpd 

2.3RPM包升级

rpm -Uvh 包全名

选项:

                -U(upgrade)        升级

与安装类似

2.4卸载

rpm -e 包名

选项:

                -e(erase)        卸载

                --nodeps             不检查依赖性

3.rpm命令管理-查询

 3.1查询是否安装

rpm -q 包名

查询包是否安装

        -q        查询(query)

rpm -qa

查询所有已经安装的RPM包

        -a        所有(all)

利用管道符,查找到已经安装的所有httpd的安装包

3.2查询软件包的详细信息

rpm -qi 包名

        -i        查询软件信息(information)

        -p        查询未安装包信息(package)

查询未安装包的信息:必须使用包全名

3.3查询包中文件安装位置

rpm -ql 包全名

        -l        列表(list)

        -p        查询未安装包的信息(package)

 

全部以绝对路径列出

 

3.4查询系统文件属于哪个RPM包

rpm -qf 系统文件名

        -f        查询系统文件属于哪个软件包(file)

 该系统文件必须是安装包装出来的,不能是系统自动生成的。

3.5查询软件包的依赖性

rpm -qR 包名

        -R        查询软件包的依赖性

        -p        查询未安装包的信息

 

4.rpm命令管理-校验和文件提取

4.1RPM包校验

用来判断我们的系统文件是否被别人进行了修改

rpm -V 已安装的包名

        -V        校验指定RPM包中的文件(verify)

没有出现任何信息表示未被修改。

验证内容中的8个信息内容:

S         文件大小是否被改变

M        文件的类型或文件的权限是否被改变

5         文件MD5校验和是否被改变(可以看成文件内容是否改变)

D        设备的中,从代码是否改变

L         文件路径是否改变

U         文件的属主(所有者)是否改变

G        文件的属组是否改变

T        文件的修改时间是否改变

注:MD5,加密方式,进行文件的完整形象验证

文件类型:

c        配置文件(config file)

d        普通文件(documentation)

g        “鬼”文件(ghost file),很少见,就是该文件不应该被这个RPM包包含

I        授权文件(license file)

r        描述文件(read me)

注:当鬼文件出现时,证明这个RPM包存在问题。

4.2RPM包中文件提取

rpm2cpio 包全名 | \

\        代表命令太长,换行,没有特殊的意义

cpio -idv . 文件绝对路径

.        代表把指定的文件提取到当前目录下

rpm2cpio

将rpm包转换为cpio格式的命令

cpio

标准工具,用于创建软件档案文件和从档案文件中提取文件

cpio 选项 < [文件|设备]

        -i        copy-in模式,还原

       -d        还原时自动新建目录

       -v        显示还原过程

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1890510.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

粒子扩展卡尔曼滤波|MATLAB代码

粒子滤波PF与扩展卡尔曼滤波EKF结合 下载链接:https://download.csdn.net/download/callmeup/89512392 粒子滤波 粒子滤波是一种用于估计状态变量的非线性滤波方法。它通过引入一组粒子来近似表示概率分布,从而利用蒙特卡洛方法进行状态估计。粒子滤波的主要思想是根据系统…

新手教学系列——慎用Flask-SQLAlchemy慢日志记录

在使用 Flask-SQLAlchemy 开发应用时,了解和避免潜在的问题是非常重要的。特别是在常驻进程和循环执行任务的场景下,慢查询记录功能(SQLALCHEMYRECORDQUERIES)可能会引发严重的内存泄漏问题。本文将详细介绍这个问题,并提供解决方案,帮助你在开发过程中避免掉入这些陷阱。…

哈希表 | 哈希查找 | 哈希函数 | 数据结构 | 大话数据结构 | Java

&#x1f64b;大家好&#xff01;我是毛毛张! &#x1f308;个人首页&#xff1a; 神马都会亿点点的毛毛张 &#x1f4cc;毛毛张今天分享的内容&#x1f586;是数据结构中的哈希表&#xff0c;毛毛张主要是依据《大话数据结构&#x1f4d6;》的内容来进行整理&#xff0c;不…

3D Gaussian Splatting代码中的train和render两个文件代码解读

现在来聊一聊训练和渲染是如何进行的 training train.py line 31 def training(dataset, opt, pipe, testing_iterations, saving_iterations, checkpoint_iterations, checkpoint, debug_from):# 初始化第一次迭代的索引为0first_iter 0# 准备输出和日志记录器tb_writer p…

0703_ARM7

练习&#xff1a; 封装exti&#xff0c;cic初始化函数 //EXTI初始化 void hal_key_exti_init(int id,int exticr,int mode){//获取偏移地址int address_offset (id%4)*8;//获取寄存器编号int re_ser (id/4)1;//printf("address_offset%d,re_ser%d\n",address_o…

苹果手机怎么刷机?适合小白的刷机办法!

自己的苹果手机用时间长了&#xff0c;有些人想要为自己的手机重新刷新一下&#xff0c;但又不知道怎么刷机。不要慌现在就来给大家详细介绍一下苹果手机怎么刷机&#xff0c;希望可以帮助到大家。 iPhone常见的刷机方式&#xff0c;分为iTunes官方和第三方软件两种刷机方式。 …

基于Web技术的教育辅助系统设计与实现(SpringBoot MySQL)+文档

&#x1f497;博主介绍&#x1f497;&#xff1a;✌在职Java研发工程师、专注于程序设计、源码分享、技术交流、专注于Java技术领域和毕业设计✌ 温馨提示&#xff1a;文末有 CSDN 平台官方提供的老师 Wechat / QQ 名片 :) Java精品实战案例《700套》 2025最新毕业设计选题推荐…

强行仅用time.localtime制作“日历牌”——全程记录“顶牛”“调戏”我的AI学习搭子

强行只用time.localtime制作“日历牌”&#xff0c;码好代码试炼通过&#xff0c;想榨取ai智能优化算法&#xff0c;结果失败。本文详细记录“顶牛”全过程。 (笔记模板由python脚本于2024年07月01日 19:16:26创建&#xff0c;本篇笔记适合喜欢python&#xff0c;喜欢搞“事儿”…

p2p、分布式,区块链笔记: 通过libp2p的Kademlia网络协议实现kv-store

Kademlia 网络协议 Kademlia 是一种分布式哈希表协议和算法&#xff0c;用于构建去中心化的对等网络&#xff0c;核心思想是通过分布式的网络结构来实现高效的数据查找和存储。在这个学习项目里&#xff0c;Kademlia 作为 libp2p 中的 NetworkBehaviour的组成。 以下这些函数或…

controller不同的后端路径对应vue前端传递数据发送请求的方式,vue请求参数 param 与data 如何对应后端参数

目录 案例一&#xff1a; 为什么使用post发送请求&#xff0c;参数依旧会被拼接带url上呢&#xff1f;这应该就是param 与data传参的区别。即param传参数参数会被拼接到url后&#xff0c;data会以请求体传递 补充&#xff1a;后端controller 参数上如果没写任何注解&#xff0c…

Redis中hash类型的操作命令(命令的语法、返回值、时间复杂度、注意事项、操作演示)

文章目录 字符串和哈希类型相比hset 命令hget 命令hexistshdelhkeyshvalshgetallhmgethlenhsetnxhincrbyhincrbyfloat 字符串和哈希类型相比 假设有以下一种场景&#xff1a;现在要在 Redis 中存储一个用户的基本信息(id1、namezhangsan、age17)&#xff0c;下图表示使用字符串…

Vue3轻松创建交互式仪表盘

本文由ScriptEcho平台提供技术支持 项目地址&#xff1a;传送门 基于 Plotly.js 的 Vue 仪表盘组件 应用场景介绍 仪表盘是一种交互式可视化工具&#xff0c;用于监控和分析关键指标。它广泛应用于各种行业&#xff0c;例如金融、医疗保健和制造业。 代码基本功能介绍 本…

Linux源码阅读笔记12-RCU案例分析

在之前的文章中我们已经了解了RCU机制的原理和Linux的内核源码&#xff0c;这里我们要根据RCU机制写一个demo来展示他应该如何使用。 RCU机制的原理 RCU&#xff08;全称为Read-Copy-Update&#xff09;,它记录所有指向共享数据的指针的使用者&#xff0c;当要修改构想数据时&…

搭建论坛和mysql数据库安装和php安装

目录 概念 步骤 安装mysql8.0.30 安装php 安装Discuz 概念 搭建论坛的架构&#xff1a; lnmpDISCUZ l 表示linux操作系统 n 表示nginx前端页面的web服务 m 表示 mysql 数据库 用来保存用户和密码以及论坛的相关内容 p 表示php 动态请求转发的中间件 步骤 &#xff…

基于Cardinal的AWD攻防平台搭建与使用以及基于docker的题目环境部署

关于 CTF 靶场的搭建与完善勇师傅前面已经总结过了&#xff0c;参考&#xff1a; CTF靶场搭建及Web赛题制作与终端docker环境部署_ctfoj搭建-CSDN博客 基于H1ve一分钟搭好CTF靶场-CSDN博客 Nginx首页修改及使用Nginx实现端口转发_nginx 修改欢迎首页-CSDN博客 关于H1ve导…

《IT 领域准新生暑期预习指南:开启未来科技之旅》

IT专业入门&#xff0c;高考假期预习指南 高考的落幕&#xff0c;只是人生长途中的一个逗号&#xff0c;对于心怀 IT 梦想的少年们&#xff0c;新的征程已然在脚下铺展。这个七月&#xff0c;当分数尘埃落定&#xff0c;你们即将迈向新的知识殿堂&#xff0c;而这个假期&#…

235、二叉搜索树的最近公共祖先

给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为&#xff1a;“对于有根树 T 的两个结点 p、q&#xff0c;最近公共祖先表示为一个结点 x&#xff0c;满足 x 是 p、q 的祖先且 x 的深度尽可能大&#xff08;一个节点也可以是它自…

代码随想录第42天|动态规划

198.打家劫舍 参考 dp[j] 表示偷盗的总金额, j 表示前 j 间房(包括j)的总偷盗金额初始化: dp[0] 一定要偷, dp[1] 则取房间0,1的最大值遍历顺序: 从小到大 class Solution { public:int rob(vector<int>& nums) {if (nums.size() < 2) {return nums[0];}vector&…

Docker安装PostgreSQL详细教程

本章教程,使用Docker安装PostgreSQL具体步骤。 一、拉取镜像 docker pull postgres二、启动容器 docker run -it --name postgres --restart always -e POSTGRES_PASSWORD=123456 -e