Linux软件包管理工具概览
目录
RPM(RedHat Package Manager)
DPKG(Debian Packager)
APT(Advanced Package Tool)
YUM(Yellowdog Updater, Modified)
DNF(Dandified YUM)
总结
在Linux系统中,dpkg、apt、rpm、yum和dnf是几种常见的包管理工具,它们分别属于不同的Linux发行版或家族,并有着各自的诞生顺序和特点。下面将按照这些工具的诞生顺序,并结合Debian、Red Hat、CentOS、Ubuntu和Kali等系统,进行详细的介绍。
RPM(RedHat Package Manager)
诞生顺序:RPM是最早出现的包管理工具之一,由Red Hat公司开发,并随着Red Hat Linux的发布而广泛使用。
特点:
- RPM是一种数据库驱动的软件包管理系统,它以数据库的形式记录了系统中安装的软件包及其依赖关系。
- RPM以
.rpm
文件作为软件包格式,安装、升级和卸载软件包时都需要处理这些文件。 - RPM本身是一个底层的工具,主要处理本地软件包的管理,而复杂的依赖关系和网络安装等则通常由上层工具(如yum)来处理。
对应系统:
- Red Hat系列:包括Red Hat Enterprise Linux(RHEL)、Fedora等。
- CentOS:基于RHEL的社区版本,也使用RPM作为包管理工具。
DPKG(Debian Packager)
诞生顺序:虽然RPM较早出现,但DPKG也紧随其后,成为Debian系列Linux发行版的包管理工具。
特点:
- DPKG是Debian的底层包管理工具,用于安装、构建、删除和管理Debian软件包(
.deb
文件)。 - DPKG提供了基本的软件包管理功能,但处理复杂的依赖关系和远程仓库安装则通常由上层工具(如apt)来完成。
对应系统:
- Debian系列:包括Debian本身、Ubuntu、Kali等。
APT(Advanced Package Tool)
诞生顺序:APT是Debian系列中用于处理复杂软件包关系和网络安装的上层工具,随着Debian的流行而广泛使用。
特点:
- APT建立在DPKG之上,提供了更高级的软件包管理功能,如自动解决依赖关系、远程仓库安装等。
- APT使用简洁的命令行界面,使得用户能够轻松地安装、更新和卸载软件包。
- 在Ubuntu中,APT得到了进一步的增强和优化,并引入了新的命令行工具
apt
(与APT包管理系统不同,是apt-get、apt-cache、apt-config的集合)。
对应系统:
- Debian系列:尤其是Ubuntu,APT是其主要的软件包管理工具。
YUM(Yellowdog Updater, Modified)
诞生顺序:YUM是在RPM之后出现的,主要用于解决RPM的依赖关系问题,并提供了更友好的用户界面。
特点:
- YUM是RPM的前端工具,设计用来自动解决RPM包的依赖关系。
- YUM使用仓库(Repository)来存储和管理软件包,用户可以从仓库中安装、更新和卸载软件包。
- YUM提供了丰富的命令行选项和配置选项,使得用户能够灵活地管理软件包。
对应系统:
- Red Hat系列:包括RHEL、Fedora(在早期版本中),以及基于这些系统的发行版如CentOS。
DNF(Dandified YUM)
诞生顺序:DNF是最新出现的包管理工具之一,旨在取代YUM并成为Fedora的默认包管理器。
特点:
- DNF是YUM的下一代版本,提供了更快的包安装速度、更好的依赖关系解析和更少的内存占用。
- DNF使用RPM、libsolv和hawkey库进行包管理操作,继承了YUM的优点并进行了多项改进。
- DNF在Fedora 22中首次引入,并逐渐在Fedora系列中普及。
对应系统:
- Fedora:DNF是Fedora的默认包管理器。
总结
- RPM:最早出现的包管理工具之一,主要用于Red Hat系列发行版。
- DPKG:Debian系列的底层包管理工具,与APT配合使用。
- APT:Debian系列的高级包管理工具,提供自动解决依赖关系和远程仓库安装等功能。
- YUM:RPM的前端工具,设计用来自动解决RPM包的依赖关系,并在Red Hat系列发行版中广泛使用。
- DNF:YUM的下一代版本,提供更快的包安装速度和更好的依赖关系解析,是Fedora的默认包管理器。
相关文章:
Linux软件包管理工具概览
目录 RPM(RedHat Package Manager) DPKG(Debian Packager) APT(Advanced Package Tool) YUM(Yellowdog Updater, Modified) DNF(Dandified YUM) 总结 在…...
unity学习16:unity里向量的计算,一些方法等
目录 1 unity里的向量: 2 向量加法 2.1 向量加法的几何意义 2.2向量加法的标量算法 3 向量减法 3.1 向量减法的几何意义 3.2 向量减法的标量算法 4 向量的标量乘法 5 向量之间的乘法要注意是左乘 还是右乘 5.1 注意区别 5.2 向量,矩阵&#x…...
HTML拖拽功能(纯html5+JS实现)
1、HTML拖拽--单元行拖动 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><…...
w158医院资源管理系统的设计与实现
🙊作者简介:多年一线开发工作经验,原创团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹赠送计算机毕业设计600个选题excel文…...
【计算机网络】lab3 802.11 (无线网络帧)
🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏: 🏀计算机网络_十二月的猫的博客-CSDN博客 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 1. 前言 2.…...
linux进程
课本概念:程序的⼀个执行实例,正在执行的程序等内核观点:担当分配系统资源(CPU时间,内存)的实体。 进程信息被放在一个叫做进程控制块的数据结构中,可以理解为进程属性的集合.课本上称之为PCB&…...
pytest-allure框架简单封装----测试报告
安装allure-commandline---可以支持allure命令 把对应的压缩包解压后,把xxx/bin配置到环境变量的path去 可以输入allure -version检查版本 pip install allure-pytest2.11.1 生成测试报告 import pytest pytest_args ["-s","-v","--capturesys…...
【2025最新计算机毕业设计】基于SpringBoot+Vue奶茶点单系统(高质量源码,提供文档,免费部署到本地)
作者简介:✌CSDN新星计划导师、Java领域优质创作者、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和学生毕业项目实战,高校老师/讲师/同行前辈交流。✌ 主要内容:🌟Java项目、Python项目、前端项目、PHP、ASP.NET、人工智能…...
HTML中最基本的东西
本文内容的标签,将是看懂HTML的最基本之基本 ,是跟您在写文章时候一样内容。一般想掌握极其容易,但是也要懂得如何使用,过目不忘,为手熟尔。才是我们学习的最终目的。其实边看边敲都行,或者是边看边复制粘贴…...
Open FPV VTX开源之ardupilot配置
Open FPV VTX开源之ardupilot配置 1. 源由2. 配置3. 总结4. 参考资料5. 补充5.1 飞控固件版本5.2 配置Ardupilot的BF OSD5.3 OSD偏左问题 1. 源由 飞控嵌入式OSD - ardupilot配置使用ardupliot配套OSD图片。 Choose correct font depending on Flight Controller SW. ──>…...
基于OQuPy的量子编程实例探究:理论、实践与展望
基于OQuPy的量子编程探究:理论、分析与实践 一、引言 1.1 研究背景与意义 近年来,量子计算作为一种革命性的计算范式,在科学界与产业界引发了广泛关注。它依托量子力学原理,运用量子比特(qubit)进行信息处理,与传统计算相比,具备并行处理、指数级加速等显著优势,为解…...
深入理解 ECMAScript 2024 新特性:正则表达式 /v 标志
ECMAScript 2024 (ES15)标准引入了新的正则表达式标志 /v,这一新增功能不仅优化了多行匹配的处理,还增加了对特殊字符匹配的支持。这一变革对于需要处理复杂文本数据的应用场景尤为重要,比如日志分析、代码审核等。接下…...
iOS 逆向学习 - Inter-Process Communication:进程间通信
iOS 逆向学习 - Inter-Process Communication:进程间通信 一、进程间通信概要二、iOS 进程间通信机制详解1. URL Schemes2. Pasteboard3. App Groups 和 Shared Containers4. XPC Services 三、不同进程间通信机制的差异四、总结 一、进程间通信概要 进程间通信&am…...
Prompt工程框架介绍与场景选择
文章目录 Prompt工程框架介绍1. CREATE框架2. RACE框架3. RISE框架4. ROSES框架5. E.R.A框架6. SAGE框架7. CARE框架8. PEAR框架9. TIER框架10. LEAP框架11. DEEP框架12. WISE框架13. FOCUS框架14. CLEAR框架15. SMART框架16. CLEAR框架17. LEAN框架18. BRIEF框架19. FAST框架2…...
信号量机制之苹果-橘子问题
桌上有一空盘,允许存放一种水果。爸爸可向盘中放苹果,也可向盘中放橘子,儿子专等吃盘中的橘子,女儿专等吃盘中的苹果。规定当盘空时一次只能放一个水果供吃者取用。 要求:请用信号量机制实现爸爸、儿子、女儿三个并发…...
工业路由器和工业交换机,如何打造高效稳定的工业网络?
工业路由器和工业交换机各有千秋,但如何将它们完美结合,构建稳定高效的工业网络?答案就在这里! 工业物联网(IIoT)是高效、稳定的工业网络成为智慧工厂、工业自动化和远程监控等场景的基础支撑。工业路由器…...
【IDEA 2024】学习笔记--文件选项卡
在我们项目的开发过程中,由于项目涉及的类过多,以至于我们会打开很多的窗口。使用IDEA默认的配置,个人觉得十分不便。 目录 一、设置多个文件选项卡按照文件字母顺序排列 二、设置多个文件选项卡分行显示 一、设置多个文件选项卡按照文件字…...
LabVIEW光流算法的应用
该VI展示了如何使用NI Vision Development Module中的光流算法来计算图像序列中像素的运动矢量。通过该方法,可以实现目标跟踪、运动检测等功能,适用于视频处理、机器人视觉和监控领域。程序采用模块化设计,包含图像输入、算法处理、结果展示…...
WPF 如何添加系统托盘
1.使用Nuget 添加 handycontrol cs xmlns:hc"https://handyorg.github.io/handycontrol" 2.窗体添加控件cs <hc:NotifyIcon x:Name"NotifyIconContextContent" Text"软件名称" ContextMenu"{StaticResource ContextMenu}" Click&…...
小游戏前端地区获取
目前前端获取除了太平洋,没有其它的了。 //在JS中都是使用的UTF-8,然而requst请求后显示GBK却是乱码,对传入的GBK字符串,要用数据流接收,responseType: "arraybuffer" tt.request({url: "https://whoi…...
美摄科技为企业打造专属PC端视频编辑私有化部署方案
美摄科技,作为视频编辑技术的先行者,凭借其在多媒体处理领域的深厚积累,为企业量身打造了PC端视频编辑私有化部署解决方案,旨在帮助企业构建高效、安全、定制化的视频创作平台,赋能企业内容创新,提升品牌影…...
【0x005B】HCI_Write_Default_Erroneous_Data_Reporting命令详解
目录 一、命令概述 二、命令格式及参数 2.1. HCI_Write_Default_Erroneous_Data_Reporting命令格式 2.2. Erroneous_Data_Reporting 三、生成事件及参数 3.1. HCI_Command_Complete事件 3.2. 状态码(Status) 四、命令执行流程 4.1. 命令发起阶段(主机端) 4.2. 命…...
1月13日学习
[HITCON 2017]SSRFme 直接给了源代码,题目名称还是ssrf,那么该题大概率就是SSRF的漏洞,进行代码审计。 <?php// 检查是否存在 HTTP_X_FORWARDED_FOR 头,如果存在,则将其拆分为数组,并将第一个 IP 地址…...
数据平台浅理解
定义 数据平台架构是指用于收集、存储、处理和分析数据的一系列组件、技术和流程的整体架构设计。它就像是一个复杂的数据生态系统的蓝图,旨在高效地管理数据从产生源头到产生价值的整个生命周期。 主要层次 数据源层 这是数据的起点,包含各种类型的数据…...
高通,联发科(MTK)等手机平台调优汇总
一、常见手机型号介绍: ISP除了用在安防行业,还有手机市场,以及目前新型的A/VR眼睛,机器3D视觉机器人,医疗内窥镜这些行业。 下面是一些最近几年发布的,,,旗舰SOC型号: 1.联发科:天玑92…...
win10 Outlook(new) 企业邮箱登录 登录失败。请在几分钟后重试。
windows系统经常弹出使用Outlook(new),自动切过去。 但是登录企业的内网邮箱,折腾了好几次都使用不了。排查网络等问题,在社区找到了答案。 推出一年多不支持企业账户,所以之前的折腾都是浪费时间。 因为这个答案不太…...
Sentaurus TCAD学习笔记:transform指令
目录 一、transform指令简介二、transform指令的实现1.cut指令2.flip指令3.rotate指令4.stretch指令5.translate指令6.reflect指令 三、transform指令示例 一、transform指令简介 在Sentaurus中,如果需要对器件进行翻转、平移等操作,可以通过transform指…...
SpringBoot+Lombok项目实体属性名xXxx格式,前端接收不到
问题解析 今天发现后端传给前端的实体类中,有属性为xXxxx格式的,前端也使用相同名称接收,结果却不显示值!研究了一会发现接口请求回来后,原xXxxx的属性名,会被转为全小写。具体原因为:使用Lombo…...
初识JAVA-面向对象的三大特征之多态
1. 重温面向对象 面向对象是一种解决问题的思想,它把计算机程序看作是各种对象组合起来的。每个对象都有自己的数据(属性)和行为(方法),主要依靠对象之间的交互来解决和实现问题。Java是一门纯面向对象的语…...
测试链接 勿看
这里写自标题 自定义定阿萨德义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants 创建一个自定…...
SQL中的行转列,列转行
SQL中的行列转换 1. 导入 有这样两张表,这两张表如何互相转换 student_table score_table 2. 行转列 使用 UNION ALL -- 行转列 SELECT name,语文 as subject,chinese_score as score FROM student_table UNION ALL SELECT name,数学 as subject,math_score…...
Windows的Redis查看自己设置的密码并更改设置密码
查看密码 由于我的Redis安装很久了,所以忘记是否有设置密码,查看步骤如下: 启动redis,启动流程可以看这篇文章:https://blog.csdn.net/changyana/article/details/127679871 在redis安装目录下打开redis-cli.exe&…...
初阶数据结构【队列及其接口的实现】
目录 前言一、队列的概念及结构二、队列的实现方式三、队列的实现3.1 基本结构3.2 队列基本功能接口初始化队列销毁队列 3.3 入队列接口3.4 出队列接口3.5 队列的其它接口获取队列头部元素获取队列队尾元素检测队列是否为空获取队列中有效元素个数 3.6 测试 总结 前言 上一期我…...
dockerfile1.0
docker的数据卷 docker file ------------- 自动自定义镜像 docker的数据卷: 容器与宿主机之间,或者容器和容器之间的数据共享(目录) 创建容器的时候,通过指定目录,实现容器于宿主机之间,或…...
CES 2025|全面拥抱端侧AI,美格智能在CES发布系列创新成果
要点: ▶ 在AI机器人领域,以高算力AI模组助力发布“通天晓”人形机器人和2款全新微小型AI机器人 ▶ 在AI硬件领域,发布消费级AI智能体产品——AIMO,引领个人专属的大模型时代 ▶ 在5G通信领域,发布全新5GWiFi-7 CPE…...
【9.1】Golang后端开发系列--Gin快速入门指南
文章目录 一、引言 🌟二、Gin 框架概述 📖(一)什么是 Gin(二)为什么选择 Gin 三、安装 Gin 框架 📦(一)安装 Go 语言环境(二)使用 Go Modules 安装…...
电商系统,核心通用架构案例设计方案浅析
文章目录 一、用户系统案例设计1、用户信息的存储方案2、用户注册确保唯一3、用户数据合并方案4、用户敏感信息加密存储5、数据传输安全性6、多用户数据隔离性7、防止恶意注册8、用户好友关系存储方案9、用户登录token方案10、会员优先处理设计 二、网关系统设计1、网关的功能2…...
易飞ERP 9.2 安装包 百度云盘 下载
易飞9.2是鼎捷数智依托四十多年实践经验,面向中小企业的全面ERP解决方案。 以下是关于易飞9.2的详细介绍: 发布与更新: 发布时间:易飞V9.2新版发布于2023年9月。 核心功能: 便捷高效࿱…...
3D目标检测数据集——Waymo数据集
Waymo数据集簡介 发布首页:https://waymo.com/open/ 论文:https://openaccess.thecvf.com/content_CVPR_2020/papers/Sun_Scalability_in_Perception_for_Autonomous_Driving_Waymo_Open_Dataset_CVPR_2020_paper.pdf github:https://github.…...
LSA更新、撤销
LSA的新旧判断: 1.seq,值越大越优先 2.chksum,值越大越优先 3.age,本地的LSA age和收到的LSA age作比较 如果差值<900s,认为age一致,保留本地的:我本地有一条LSA是100 你给的是400 差值小于…...
Redis复制(replica)
Redis主从复制 [Redis主从复制](replica)是一个多Redis实例进行数据同步的过程,其中一个实例是主实例(Master),其他实例是从实例(Slave)。主实例负责处理命令请求,而从实…...
Ubuntu上,ffmpeg如何使用cuda硬件解码、编码、转码加速
本文使用 Ubuntu 环境。Ubuntu 直接使用 APT 安装的就支持 CUDA 加速。本文使用这样下载的版本进行演示,你自己编译或者其他源的版本可能会不同。 ffmpeg 的一些介绍,以及 macOS 版本的 ffmpeg 硬件加速请见《macOS上如何安装(不需要编译安装…...
磁盘满造成业务异常问题排查
最近遇到一个因为磁盘满导致的问题,分享一下,希望能够帮助到以后遇到同样问题的朋友。 早上突然收到业务老师反馈说:上传文件不能正常上传了。 想想之前都好好的,最近又没有更新,为什么突然不能使用了呢?…...
vim基本命令(vi、工作模式、普通模式、插入模式、可视模式、命令行模式、复制、粘贴、插入、删除、查找、替换)
1. Vim的作用 1.1. 文本编辑 1.1.1. 基础文本编辑功能 Vim是一个功能强大的文本编辑器,它可以用来创建、修改和保存各种文本文件。无论是编写简单的文本笔记,还是复杂的代码文件,Vim都能胜任。例如,我们可以用它来编写Python脚…...
vue的KeepAlive应用(针对全部页面及单一页面进行缓存)
KeepAlive的作用是缓存包裹在其中的动态切换组件 当一个组件在 中被切换时,它的 activated 和 deactivated 生命周期钩子将被调用,用来替代 mounted 和 unmounted。这适用于 的直接子节点及其所有子孙节点。 缓存全部页面 将app.vue中的路由出口改为&am…...
Big Model weekly | 第53期
点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 01 CodeRosetta: Pushing the Boundaries of Unsupervised Code Translation for Parallel Programming 近期在大型语言模型(LLMs)的进展重新激发了自动编程语言翻译的兴趣。特别是编码器…...
基于STM32设计的粮食仓库(粮仓)环境监测系统
一、前言 1.1 项目开发背景 随着现代农业的发展和粮食储存规模的扩大,粮仓环境的智能化监控需求日益增长。传统的粮仓管理方式通常依赖人工检测和定期巡查,效率低下且容易出现疏漏,无法及时发现潜在问题,可能导致粮食受潮、霉变…...
大数据技术Kafka详解 ⑤ | Kafka中的CAP机制
目录 1、分布式系统当中的CAP理论 1.1、CAP理论 1.2、Partitiontolerance 1.3、Consistency 1.4、Availability 2、Kafka中的CAP机制 C软件异常排查从入门到精通系列教程(核心精品专栏,订阅量已达600多个,欢迎订阅,持续更新…...
44.ComboBox的数据绑定 C#例子 WPF例子
固定最简步骤,包括 XAML: 题头里引入命名空间 标题下面引入类 combobox绑定资源属性和选择属性,block则绑定和combobox一样的选择属性 C#: 通知的类,及对应固定的任务 引入字段 引入属性 其中资源是只读的 选…...
SOLID原则学习,接口隔离原则(Interface Segregation Principle, ISP)
文章目录 1. 定义2. 为什么要遵循接口隔离原则?3. 违反接口隔离原则的例子4. 遵循接口隔离原则的改进5. 总结 1. 定义 接口隔离原则(Interface Segregation Principle, ISP) 接口隔离原则是面向对象设计中的五大原则(SOLID&#…...