首页 > 运维 > linux运维 > 正文

如何查看包文件列表 提取rpm/deb内容

P粉602998670
发布: 2025-08-13 11:55:01
原创
1018人浏览过

使用rpm -qlp查看rpm包文件列表,rpm -qip查看元信息,rpm2cpio结合cpio提取文件;2. 使用dpkg -c查看deb包文件列表,dpkg -i查看包信息,ar x提取deb包内容后用tar解压data.tar.gz获取文件;3. 跨平台可使用7z直接查看或提取rpm和deb包,无需安装对应包管理器;所有操作均无需安装软件包即可完成查看与提取,且需注意文件路径为绝对路径,避免误覆盖系统文件,操作完成后应妥善处理提取内容以确保系统安全。

如何查看包文件列表 提取rpm/deb内容

在 Linux 系统中,

.rpm
登录后复制
.deb
登录后复制
是两种常见的软件包格式,分别用于基于 Red Hat 的系统(如 CentOS、Fedora)和基于 Debian 的系统(如 Ubuntu、Debian)。有时我们不需要安装这些包,而是想查看或提取其中包含的文件内容。以下是查看和提取 rpm/deb 包内容的方法。


一、查看和提取 RPM 包内容

1. 查看 RPM 包中包含的文件列表

rpm -qlp package.rpm
登录后复制
  • -q
    登录后复制
    :查询
  • -l
    登录后复制
    :列出文件
  • -p
    登录后复制
    :指定包文件(而不是已安装的包)
示例:rpm -qlp httpd-2.4.6-97.el7.centos.x86_64.rpm

2. 不安装查看 RPM 包的元信息

rpm -qip package.rpm
登录后复制
  • -i
    登录后复制
    :显示包信息(版本、描述、依赖等)

3. 提取 RPM 包中的文件

RPM 本身不支持直接解压,但可以通过

rpm2cpio
登录后复制
+
cpio
登录后复制
工具链提取内容:

rpm2cpio package.rpm | cpio -idmv
登录后复制
  • rpm2cpio
    登录后复制
    :将 rpm 转换为 cpio 格式
  • cpio -idmv
    登录后复制
    • -i
      登录后复制
      :提取
    • -d
      登录后复制
      :创建目录
    • -m
      登录后复制
      :保留文件时间
    • -v
      登录后复制
      :显示过程

执行后,文件会按原始路径结构解压到当前目录。


二、查看和提取 DEB 包内容

1. 查看 DEB 包中包含的文件列表

dpkg -c package.deb
登录后复制
  • 类似于
    tar -tvf
    登录后复制
    ,会列出包内文件及权限、大小、时间等。

示例:

dpkg -c nginx_1.18.0-6_amd64.deb
登录后复制

2. 不安装查看 DEB 包信息

dpkg -I package.deb
登录后复制
  • 显示包的控制信息:包名、版本、架构、描述等。

3. 提取 DEB 包内容

DEB 包本质是一个 ar 归档文件,包含

control.tar.gz
登录后复制
data.tar.gz
登录后复制
debian-binary
登录后复制

提取整个包内容:

Rose.ai
Rose.ai

一个云数据平台,帮助用户发现、可视化数据

Rose.ai 74
查看详情 Rose.ai
ar x package.deb
登录后复制

执行后会生成:

  • debian-binary
    登录后复制
    :版本信息
  • control.tar.gz
    登录后复制
    :安装脚本和元数据
  • data.tar.gz
    登录后复制
    :实际的文件数据

提取实际文件内容:

tar -xzf data.tar.gz
登录后复制

或者一步提取 data 部分:

ar p package.deb data.tar.gz | tar -xz
登录后复制

三、通用方法(无需安装包管理器)

如果你在非对应系统上(比如在 Ubuntu 上查看 rpm 包),可以使用归档工具直接查看:

使用
7z
登录后复制
查看或提取(支持 rpm 和 deb)

7z x package.rpm
7z x package.deb
登录后复制
  • 7z
    登录后复制
    可以直接解压这两种格式,适合跨平台使用。
  • 安装 7-zip:
    • Debian/Ubuntu:
      sudo apt install p7zip-full
      登录后复制
    • CentOS/RHEL:
      sudo yum install p7zip-full
      登录后复制
      或使用 EPEL

小贴士

  • 不要随意提取系统包覆盖文件,可能导致系统不稳定。
  • 若仅需查看某个配置文件或脚本,推荐使用上述命令查看,而非提取。
  • 提取后注意路径结构,deb/rpm 中的文件路径通常是绝对路径(如
    /usr/bin/xxx
    登录后复制
    )。

基本上就这些常用操作。无论是 rpm 还是 deb,都不需要安装即可查看和提取内容,关键是掌握

rpm2cpio | cpio
登录后复制
ar + tar
登录后复制
这两套工具链。

以上就是如何查看包文件列表 提取rpm/deb内容的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号