linux中rpm包与deb包的区别及使用
文章目录
- 1. rpm与deb的区别
- 2. deb软件包的格式和使用
- 2.1 deb软件包命令遵行如下约定
- 2.2 dpkg命令
- 2.3 apt-命令
- 3. Unix和Linux的区别
- Reference
1. rpm与deb的区别
有的系统只支持使用rpm包安装,有的只支持deb包安装,混乱安装会导致系统问题。
关于rpm和deb
RPM(Red Hat Package Manager),是基于Red hat的Linux Distribution的包管理系统,
同时也指rpm包本身,RPM用于rpm包的管理(诸如安装、卸载、升级等),
像Mandrake和SuSE这些基于RPM的发行版通常有自己特定的rpm包,
如果混合安装可能不会正常工作,而对于第三方发行的rpm包一般都能在基于RPM的系统上正常安装。
对于基于Debian的系统使用deb格式的包,有包转换工具使rpm与deb及其他文件之间互相转换(Alien Package Converter),
其安装和升级可用dpkg,不过它不能很方便地处理包的依赖关系,比较省事的有dselect和apt-get,
Ubunut是debian的变种, 其软件以deb包或者源文件的形式出现。
rpm包主要用于redhat及分支如redhat,centos,Fedora等,而deb包主要用于debian及分支如debian,ubuntu等。
rpm包相对来说版本不是最新的,但是比较稳定;而deb包则相对来说版本比较新,一般某个新软件出来说可能有deb包,但是使用过程中容易引起bugs。
2. deb软件包的格式和使用
2.1 deb软件包命令遵行如下约定
soft_ver-rev_arch.deb
如:pptview_8.0-5_i386.deb 中名字是pptview,版本号8.0,架构为i386平台。
2.2 dpkg命令
root@huxiping:~# dpkg --help
Usage:
dpkg -i|--install <.deb file name> ... | -R|--recursive
...
dpkg --unpack <.deb file name> ... | -R|--recursive
...
dpkg -A|--record-avail <.deb file name> ... | -R|--recursive
...
dpkg --configure ... | -a|--pending
dpkg -r|--remove | -P|--purge ... | -a|--pending
dpkg --get-selections [ ...] get list of selections to stdout
dpkg --set-selections set package selections from stdin
dpkg --update-avail replace available packages info
dpkg --merge-avail merge with info from file
dpkg --clear-avail erase existing available info
dpkg --forget-old-unavail forget uninstalled unavailable pkgs
dpkg -s|--status ... display package status details
dpkg -p|--print-avail ... display available version details
dpkg -L|--listfiles ... list files `owned' by package(s)
dpkg -l|--list [ ...] list packages concisely
dpkg -S|--search ... find package(s) owning file(s)
dpkg -C|--audit check for broken package(s)
dpkg --print-architecture print dpkg architecture
dpkg --compare-versions compare version numbers - see below
dpkg --help | --version show this help / version number
dpkg --force-help | -Dh|--debug=help help on forcing resp. debugging
dpkg --licence print copyright licensing terms
Use dpkg -b|--build|-c|--contents|-e|--control|-I|--info|-f|--field|
-x|--extract|-X|--vextract|--fsys-tarfile on archives (type dpkg-deb --help.)
For internal use: dpkg --assert-support-predepends | --predep-package |
--assert-working-epoch | --assert-long-filenames | --assert-multi-conrep
Options:
--admindir= Use instead of /var/lib/dpkg
--root= Install on alternative system rooted elsewhere
--instdir= Change inst'n root without changing admin dir
-O|--selected-only Skip packages not selected for install/upgrade
-E|--skip-same-version Skip packages whose same version is installed
-G|--refuse-downgrade Skip packages with earlier version than installed
-B|--auto-deconfigure Install even if it would break some other package
--no-debsig Do no try to verify package signatures
--no-act|--dry-run|--simulate
Just say what we would do - don't do it
-D|--debug= Enable debugging - see -Dhelp or --debug=help
--status-fd Send status change updates to file descriptor
--log= Log status changes and actions to
--ignore-depends=,... Ignore dependencies involving
--force-... Override problems - see --force-help
--no-force-...|--refuse-... Stop when problems encountered
--abort-after Abort after encountering errors
Comparison operators for --compare-versions are:
lt le eq ne ge gt (treat empty version as earlier than any version);
lt-nl le-nl ge-nl gt-nl (treat empty version as later than any version);
< << <= = >= >> > (only for compatibility with control file syntax).
Use `dselect' or `aptitude' for user-friendly package management.
root@huxiping:~#
dpkg -i | --install xxx.deb 安装deb软件包
dpkg -r | --remove xxx.deb 删除软件包
dpkg -r -P | --purge xxx.deb 连同配置文件一起删除
dpkg -I | -info xxx.deb 查看软件包信息
dpkg -L xxx.deb 查看文件拷贝详情
dpkg -l 查看系统中已安装软件包信息
dpkg-reconfigure xxx 重新配置软件包
有些时候,您使用“dpkg”安装一个软件包,系统会提示您该软件包依赖其它软件包。这时,您先安装其它软件包,直到满足依赖关系为止。或者同时安装多个软件包。
dpkg -i aaa.deb bbb.deb ccc.deb
2.3 apt-命令
ubuntu的apt-命令能够自动完成软件依赖,用的比较多的是apt-get,其实还有其他的用法可以挖掘一下的,比如下面
root@huxiping:~# apt-
apt-cache apt-config apt-ftparchive apt-key
apt-cdrom apt-extracttemplates apt-get apt-sortpkgs
root@huxiping:~# apt-
如果一个软件依赖关系过于复杂,使用“dpkg”来安装它,并不是一个明智的选择,这个时候您就需要用到APT软件包管理系统。
APT可以自动的检查依赖关系,通过预设的方式来获得相关软件包,并自动安装配置它。事实上,在多数情况下,我们推荐您使用APT软件包管理系统。APT系统需要一个软件信息数据库和至少一个存放着大量deb包的软件仓库,我们称之为“源”。“源”可以是网络服务器,安装CD或者本地软件仓库。您需要修改“/etc/apt/sources.list”文件,使APT系统能够连接到“源”。
3. Unix和Linux的区别
Unix和Linux的主要区别在于它们的许可、历史、用户界面、硬件要求等。以下是相关介绍:
-
许可。Unix是一个封闭的商业操作系统,通常只提供给付费用户或特定的合作伙伴;Linux是一个开源的操作系统,遵循GPL协议,允许用户自由地访问、修改和分发其源代码。
-
历史。Unix是最早的商业操作系统之一,由肯·汤普森和丹尼斯·里奇在1969年开发;Linux由芬兰学生林纳斯·托瓦兹于1991年基于Unix的思想和Minix操作系统创建。
-
用户界面。Unix通常更倾向于使用命令行界面,而Linux则更加注重图形用户界面的发展。
-
硬件要求。Unix大多与硬件配套,对硬件的要求较高;Linux可以运行在多种硬件平台上,对硬件的要求较低。
-
应用程序兼容性。由于Unix是商业软件,某些商业软件可能只在其上运行,而Linux有许多开源的替代软件,使得应用程序兼容性较广。
-
发行版本。Unix有不同的版本,每个版本都有自己的特点和功能;Linux有众多的发行版本,如Ubuntu、Red Hat、Debian等,这些发行版本在内核和软件包选择上有所不同。
-
内核。Unix使用的内核是专有的,由相应的厂商开发和维护;Linux使用的内核是开源的,由全球的开发者共同维护和改进。
-
文件系统。Unix和Linux都支持多种文件系统,但Linux支持的文件系统类型更多,如FAT32、NTFS和HFS+等,这使得Linux可以更好地与其他操作系统兼容。
总的来说,Linux是Unix的一种开源克隆版本,两者在许可、历史、用户界面、硬件要求等方面有显著的区别。
Unix和Linux之间的主要区别在于UNIX是一个多用户和多任务操作系统,而Linux是基于UNIX的操作系统。其他区别包括:
1.Linux是开源的,而Unix不是开源的。2.Linux是免费使用的,而Unix是授权的操作系统。3.Linux使用范围更广泛,从台式机,服务器,智能手机到大型机,而Unix主要用于服务器,工作站或PC。
什么是 UNIX?
该操作系统于1960年推出,最初是由贝尔实验室的Ken Thompson领导的一个单人项目。后来逐渐发展成为了一款流行的操作系统,也就是说Unix是专有的操作系统。它本身是一个功能强大的多任务操作系统,它的行为就像用户和计算机之间的桥梁。不仅如此它还能保护用户的数据和资源不会在没有授权的情况下被访问,因此比较受大学、实验室等地方的喜欢。
什么是 Linux?
Linux是一个开源操作系统,它是由赫尔辛基大学的Linus Torvalds于1991年推出。Unix确实是更好的操作系统,但Unix的价格比较昂贵。Linux的优势就在于免费、开源,任何人都可以使用和更改它。不仅如此,Linux的图形用户界面对于用户使用应用程序更加友好。它还包含一个功能强大的命令行界面 (CLI)。用户可以在终端中键入命令以执行大量任务。
UNIX和Linux之间的关系
Linux是基于UNIX的操作系统。
定义
UNIX是一系列多任务,多用户计算机操作系统,源自原始的AT&T Unix。Linux是围绕Linux内核构建的自由和开源软件操作系统系列。
成本
就像前面说的,Unix是比较昂贵的一款操作系统, 而Linux是免费。
安装
安装Unix对于硬件的要求非常高,而Linux要求就很低,甚至比Windows都可能要低。
移植性
考虑到Unix的特性,它不能被移植到其他设备上。但Linux是嵌入式最广泛使用的操作系统之一,可移植性很好。
结论
UNIX和Linux之间的区别在于UNIX是多用户和多任务操作系统,而Linux是基于UNIX的操作系统。此外,UNIX主要用于高端服务器、实验室等,而Linux则被用于更贴近生活的台式机、笔记本等。
Reference
https://www.cnblogs.com/longchang/p/12530697.html
https://blog.csdn.net/frank0712105003/article/details/8125662
相关文章:

linux中rpm包与deb包的区别及使用
文章目录 1. rpm与deb的区别2. deb软件包的格式和使用2.1 deb软件包命令遵行如下约定2.2 dpkg命令2.3 apt-命令 3. Unix和Linux的区别Reference 1. rpm与deb的区别 有的系统只支持使用rpm包安装,有的只支持deb包安装,混乱安装会导致系统问题。 关于rpm和…...

Linux中安装seata
Linux中安装seata 一、准备1、环境2、下载3、上传到服务器4、解压 二、配置1、备份配置文件2、导入sql3、修改配置前4、修改配置后5、在nacos中配置 三、使用1、启动2、关闭 一、准备 1、环境 因为要在 nacos 中配置,要求安装并启动 nacos 。可以参考这篇博客。 …...

预印本仓库ArXiv——防止论文录用前被别人剽窃
文章目录 一、什么是预印本二、什么是ArXiv2.1 ArXiv的领域2.2 如何使用 一、什么是预印本 预印本(Preprint)是指科研工作者的研究成果还未在正式出版物上发表,而出于和同行交流目的自愿先在学术会议上或通过互联网发布的科研论文、科技报告…...

LNMP 架构
1. 环境准备 环境准备 lnmp 需要 安装 nginx mysql php 软件 1.1 关闭防火墙 systemctl disable --now firewalld setenforce 0 1.2 安装依赖包 yum -y install pcre-devel zlib-devel gcc gcc-c make 1.3 创建运行用户、组 (Nginx 服务程序默认以 nobody 身份…...
谈谈Python中的单元测试和集成测试
谈谈Python中的单元测试和集成测试 Python中的单元测试和集成测试是软件开发过程中的重要环节,它们确保了代码的质量和稳定性。单元测试主要关注代码的最小可测试单元——通常是函数或类的方法,而集成测试则关注这些单元之间的协作和交互。下面…...
【2024】Prometheus通过node_exporter都监控了什么
我们通过prometheus进行监控,通过node_exporter进行Linux系统的监控。 那么我们通过node_exporter都监控了什么? 目录 常用指标CPU相关内存相关磁盘相关网络相关其他指标常用监控告警案例:cpu案例:内存案例:磁盘案例:网络案例:常用指标 Prometheus通过node_exporter可以…...

Centos7配置秘钥实现集群免密登录
设备:MacBook Pro、多台Centos7.4服务器(已开启sshd服务) 大体流程:本机生成秘钥,将秘钥上传至服务器即可实现免密登录 1、本地电脑生成秘钥: ssh-keygen -t rsa -C "邮箱地址 例:*****.163.com"一路回车…...

Android匿名共享内存(Ashmem)
在Android中我们熟知的IPC方式有Socket、文件、ContentProvider、Binder、共享内存。其中共享内存的效率最高,可以做到0拷贝,在跨进程进行大数据传输,日志收集等场景下非常有用。共享内存是Linux自带的一种IPC机制,Android直接使用…...

MySOL之旅--------MySQL数据库基础( 3 )
本篇碎碎念:要相信啊,胜利就在前方,要是因为一点小事就停滞不前,可能你也不适合获取胜利,成功的路上会伴有泥石,但是走到最后,你会发现身上的泥泞皆是荣耀的勋章! 今日份励志文案: 凡是发生皆有利于我 目录 查询(select) 1.全列查询 2.指定列查询 3.查询字段为表达式 编…...
阿药陪你学Java(第零讲)
第零讲:基本数据类型 Java包括两种数据类型,分别是内置数据类型(基本数据类型)和引用数据类型。 内置数据类型 Java提供了8中内置类型,其中包括4种数字整型、2种数字浮点型、1中字符型、1中布尔型。下面进行详细介绍…...

华院计算参编《金融业人工智能平台技术要求》标准
随着人工智能技术的迅猛发展,金融机构正在从业务场景化向企业智能化演进,金融业对智能化的需求愈加迫切。为引导产业有序发展、规范行业自律、加快金融行业智能化转型,中国信通院依托中国人工智能产业发展联盟(AIIA)及…...
vue3-element-admin二次开发遇到的问题总结,持续更新中
vue3-element-admin 是基于 Vue3 Vite5 TypeScript5 Element-Plus Pinia 等主流技术栈构建的免费开源的后台管理前端模板(配套后端源码)。 一、定制Element-Plus主题 1.创建 variables.scss 变量文件 /*variables.scss*/ /*覆盖element-plus变量*/…...

SpringMVC数据接收(全面/详细注释)
SpringMVC涉及组件: DispatcherServlet : SpringMVC提供,我们需要使用web.xml配置使其生效,它是整个流程处理的核心,所有请求都经过它的处理和分发![ CEO ]HandlerMapping : SpringMVC提供,我们需要进行…...

golang 冒泡、选择、插入、快速排序法
个人学习笔记~ 1. 冒泡排序 // Author sunwenbo // 2024/4/6 22:37 /* 1. 一共会经过arr.length -1 次的轮数比较,每一轮将会确认一个数的位置 2. 每一轮的比较次数逐渐的减少 [4,3,2,1] 3. 当发现前面的一个数比后面的一个数大的时候,就进行…...

vue3 +Taro 页面实现scroll-view 分页功能
需求 现在分页列表 后端只给你一个分页的数据列表 没有总页数 没有当前的分页 页数 只有这么一个list 、、、 如何去分页 我这使用的是scroll-view 组件 滑动到底部的事件 根据你当前设定的每页的数据数量和后端返回给你的数据列表数量 当某一次分页 两个数量不相等了以后 就…...
【http】常见http headers
相关文章:http 状态码 和http methods及restful api 常见http headers 1 常见的Request Headers Accept 浏览器可接收的数据格式 Accept-Encoding 浏览器可接收的压缩算法,gzip Accept-language 浏览器可接收的语言 Connection:keep-alive 一次TCP连接…...

Web App 入门指南:构建预测模型 App 的利器(shiny)
Web App 入门指南:构建预测模型 App 的利器 简介 近年来,随着机器学习和人工智能技术的快速发展,预测模型在各行各业得到了广泛应用。为了方便地部署和使用预测模型,将模型构建成 Web App 是一种非常好的选择。Web App 无需下载…...

6.7物联网RK3399项目开发实录-驱动开发之Camera摄像头的使用(wulianjishu666)
90款行业常用传感器单片机程序及资料【stm32,stc89c52,arduino适用】 链接:https://pan.baidu.com/s/1M3u8lcznKuXfN8NRoLYtTA?pwdc53f Camera 使用 简介 AIO-3399J 开发板分别带有两个 MIPI,MIPI 支持最高 4K 拍照,并支持 1080P 30fp…...

OSCP靶场-- Sybaris
OSCP靶场–Sybaris 考点(redis MODULE LOAD命令执行) 1.nmap扫描 ## ┌──(root㉿kali)-[~/Desktop] └─# nmap 192.168.158.93 -sV -sC -Pn --min-rate 2500 -p- Starting Nmap 7.92 ( https://nmap.org ) at 2024-04-11 04:24 EDT Nmap scan report for 192.168.158.93…...
MyBatis 执行流程
加载配置文件:MvBatis 的执行流程从加载配置文件开始。通常,MyBatis 的配置文件是一个 XML 文件,其中包含了数据源配置、SQL 映射配置、连接池配置等信息。构建 SqlSessionFactory:在配置文件加载后,MyBatis 使用配置信息来构建 SqlSessionFa…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统
医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...

从深圳崛起的“机器之眼”:赴港乐动机器人的万亿赛道赶考路
进入2025年以来,尽管围绕人形机器人、具身智能等机器人赛道的质疑声不断,但全球市场热度依然高涨,入局者持续增加。 以国内市场为例,天眼查专业版数据显示,截至5月底,我国现存在业、存续状态的机器人相关企…...
蓝桥杯 2024 15届国赛 A组 儿童节快乐
P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...
vue3 字体颜色设置的多种方式
在Vue 3中设置字体颜色可以通过多种方式实现,这取决于你是想在组件内部直接设置,还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法: 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

如何在看板中有效管理突发紧急任务
在看板中有效管理突发紧急任务需要:设立专门的紧急任务通道、重新调整任务优先级、保持适度的WIP(Work-in-Progress)弹性、优化任务处理流程、提高团队应对突发情况的敏捷性。其中,设立专门的紧急任务通道尤为重要,这能…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...
关于 WASM:1. WASM 基础原理
一、WASM 简介 1.1 WebAssembly 是什么? WebAssembly(WASM) 是一种能在现代浏览器中高效运行的二进制指令格式,它不是传统的编程语言,而是一种 低级字节码格式,可由高级语言(如 C、C、Rust&am…...
稳定币的深度剖析与展望
一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)
本期内容并不是很难,相信大家会学的很愉快,当然对于有后端基础的朋友来说,本期内容更加容易了解,当然没有基础的也别担心,本期内容会详细解释有关内容 本期用到的软件:yakit(因为经过之前好多期…...

day36-多路IO复用
一、基本概念 (服务器多客户端模型) 定义:单线程或单进程同时监测若干个文件描述符是否可以执行IO操作的能力 作用:应用程序通常需要处理来自多条事件流中的事件,比如我现在用的电脑,需要同时处理键盘鼠标…...