dpkg(Debian Package)和rpm(RPM Package Manager)是两种不同的Linux包管理工具,它们各自在特定的Linux发行版中占据核心地位。两者之间对比如下:

  1. 所属发行版:dpkg主要用于Debian及其衍生系统,如Ubuntu、Knoppix等。而rpm则主要用于Red Hat及其衍生系统,如CentOS和Fedora。
  2. 软件包格式:dpkg使用.deb格式的软件包,而rpm则使用.rpm格式的软件包。这两种格式在安装、更新和删除过程中都提供了依赖性的检查和处理功能,但具体的实现方式可能有所不同。
  3. 依赖性管理:dpkg和rpm都能有效地管理软件包的依赖关系,但各有其特点。dpkg的依赖关系管理功能相对强大,能够确保在安装、更新或删除软件包时,所有必要的依赖关系都得到满足。而rpm则通过其元数据支持来管理依赖关系,这有助于避免因依赖性问题导致的软件包安装失败。
  4. 命令行工具:dpkg和rpm都提供了命令行工具来执行安装、删除、查询和更新软件包等操作。dpkg的命令行工具包括dpkg本身以及更高级的工具如apt-get,它们提供了丰富的功能和选项。而rpm则直接使用rpm命令来执行相关操作。
  5. 底层与高层工具:dpkg可以看作是一个底层的工具,它提供了对软件包内容的底层访问。而rpm也提供了类似的底层功能,但通常与更高级的工具(如yum或dnf)结合使用,这些工具提供了更丰富的功能和更友好的用户界面。
  6. 安全性与稳定性:dpkg和rpm都经过了广泛的测试和验证,以确保其安全性和稳定性。然而,由于它们各自在特定的Linux发行版中使用,因此在安全性和稳定性方面可能存在一些细微的差异。

列出已安装的软件包

dpkg -l

rpm -q package  # 查询已安装的软件包
rpm -qi package # 查询已安装软件包的详细信息
rpm -ql package # 列出已安装软件包的文件列表
rpm -qa package # 列出所有已安装的软件包

安装软件包

dpkg -i package_file.deb

rpm -i package_file.rpm

删除软件包

dpkg -r package # 删除已安装的软件包,但保留配置文件
dpkg -P package # 完全清除已安装的软件包,包括删除配置文件 rpm -e package # -e 表示删除(erase),rpm命令没有直接提供保留或删除配置文件的选项,但你可以在删除后再手动处理配置文件

查看软件包内容

dpkg -c package_file.deb

rpm -ql package_file.rpm
rpm -qlp yourpackage.rpm # 只查看RPM包内容而不解压

解压软件包

dpkg-deb -R package_file.deb directory 	# 将软件包的内容解压到指定目录,包括控制信息(如DEBIAN目录)。
dpkg-x package_file.deb directory # 将软件包的内容(不包含控制信息)解压到指定目录。
dpkg-X package_file.deb directory # 将软件包的内容(不包含控制信息)解压到指定目录,并在控制台输出详细信息。 rpm2cpio yourpackage.rpm | cpio -idmv

dpkg和rpm对比及常用命令的更多相关文章

  1. dpkg 比rpm好用 常用没命令 UbuntuVS RHEL

    yum install      (必须先执行apt update)apt install yum remove(危险禁止使用)  apt remove(危险禁止使用) rpm -Uvh        ...

  2. Redhat6 RPM 软件管理常用命令汇总

    软件的安装时操作系统管理的基础,与Windows不同,Linux的软件管理有很多种方式,Redhat的最常用的是RPM方式,安装集成在光盘中的RPM包.这种方式比Windows平台的软件管理更加便捷( ...

  3. ubuntu下dpkg/apt的一些常用命令

    apt-get update 更新源(硬盘缓存的包的版本等)apt-get upgrade 更新包(更新系统中已安装的包,依据缓存包的版本更新)apt-get dist-upgrade 升级系统apt ...

  4. DOS 和 Linux 常用命令的对比

    DOS 和 Linux 常用命令的对比 许多在 shell 提示下键入的 Linux命令都与你在 DOS 下键入的命令相似.事实上,某些命令完全相同. 本附录提供了 Windows的 DOS 提示下的 ...

  5. yum与rpm常用命令

    1  yum常用命令 2  rpm常用命令 1  yum常用命令 (1)列出所有可更新的软件清单命令:yum check-update (2)更新所有软件命令:yum update (4)仅安装指定的 ...

  6. rabbitmq 部署(二进制和rpm)与常用命令

    目录 一 rabbitmq 简介 二 erlang 安装 三 rabbitmq rpm安装 (二进制安装和rpm安装二选一) 四 rabbitmq 二进制安装(rpm 安装和二进制安装二选一) 五 初 ...

  7. yum 系列(一) yum 和 rpm 常用命令

    yum 系列(一) yum 和 rpm 常用命令 一.yum 常用命令 yum 命令:http://man.linuxde.net/yum yum 是在 Fedora 和 RedHat 以及 SUSE ...

  8. 思科、华为、H3C常用命令对比大全

    思科.华为.H3C这些网络设备的命令还是挺多的,不过我们一般用的路由交换机设备都是最简单的了,先学基本命令,再学其他功能命令.路由命令是最基本的命令了. 思科.华为.H3C常用命令对比大全    CI ...

  9. CentOS的rpm常用命令(转)

    一.RPM 安装操作 命令: rpm -i 需要安装的包文件名 举例如下: rpm -i example.rpm 安装 example.rpm 包: rpm -iv example.rpm 安装 ex ...

  10. Linux系统管理常用命令

    Linux系统管理常用命令 分类: Linux2011-01-10 18:26 1538人阅读 评论(0) 收藏 举报 linuxcommandservicenginxuserunix 目录(?)[+ ...

随机推荐

  1. WCHAR 字符串拼接

    LPCWSTR GetIniPath() { WCHAR buffer[MAX_PATH]; BOOL result = SHGetSpecialFolderPath(0, buffer, CSIDL ...

  2. keycloak~对架构提供的provider总结

    提供者目录 Provider Authenticator BaseDirectGrantAuthenticator AbstractFormAuthenticator AbstractUsername ...

  3. redis 简单整理——复制的原理[二十三]

    前言 简单介绍一下复制的原理. 正文 在从节点执行slaveof命令后,复制过程便开始运作,下面详细介绍建立 复制的完整流程. 1)保存主节点(master)信息. 执行slaveof后从节点只保存主 ...

  4. pytest-fixture使用

    fixture(scope='function',params=None,autouse=False,ids=None,name=None):scope:设置作用域:params:传参数,以列表进行存 ...

  5. .NET8中的Microsoft.Extensions.Http.Resilience库

    接上一篇,https://www.cnblogs.com/vipwan/p/18129361 借助Aspire中新增的Microsoft.Extensions.ServiceDiscovery库,我们 ...

  6. 给蚂蚁金服 antv 提个 PR, 以为是改个错别字, 未曾想背后的原因竟如此复杂!

    前言 什么? 你不了解G2Plot? 没关系, 今天咱们要分享的内容和G2Plot的关系, 就像雷锋和雷峰塔的关系. 因此, 不必担心听不懂. 我一直觉得, 如果我写的文章有人看不懂, 那一定是我写的 ...

  7. CSS 中 MASK 实现图片遮罩登炫酷效果

    顾名思义,mask 译为遮罩.在 CSS 中,mask 属性允许使用者通过遮罩或者裁切特定区域的图片的方式来隐藏一个元素的部分或者全部可见区域. 其实 mask 的出现已经有一段时间了,只是没有特别多 ...

  8. 数据结构实验代码分享 - 3 (哈夫曼树 / HuffmanTree)

    哈夫曼编码/ 译码系统(树应用) [问题描述] 任意给定一个仅由 26 个大写英文字母组成的字符序列,根据哈夫曼编码算法,求得每个字符的哈夫曼编码. 要求: 1)输入一个由 26 个英文字母组成的字符 ...

  9. vscode使用ES6装饰器器语法

    1. react项目 配置 package.json 需要安装 npm i @babel/plugin-proposal-decorators 可能需要重启项目 { "babel" ...

  10. 第 8章 Python 爬虫框架 Scrapy(下)

    第 8章 Python 爬虫框架 Scrapy(下) 8.1 Scrapy 对接 Selenium 有一种反爬虫策略就是通过 JS 动态加载数据,应对这种策略的两种方法如下:  分析 Ajax 请求 ...