Linux 系统下提取 RPM 包内容

Linux OS Extract RPM Package Contents

Posted by zihengCat on 2017-07-24

前言

对于红帽系(Red Hat)的 Linux 系统而言,大多使用rpm作为系统包管理工具(RPM Package Manager)。

我们可以使用命令rpm -qlp来查看一枚rpm包所包含的文件。那么,如何在不安装该rpm包的情况下提取出包中的文件呢?

提取RPM包内容

为了提取rpm包中的文件,我们需要用到两款工具:rpm2cpiocpio。使用如下命令组合,即可将rpm包内容文件提取出来。

$ rpm2cpio <RPM_PACKAGE.rpm> | cpio -idmv

代码清单:提取rpm包文件

rpm包默认使用cpio格式进行归档打包,rpm2cpio工具可以将rpm包转换为cpio归档,该命令默认将内容直接输出到标准输出流stdout

cpio工具主要用来建立或者还原备份归档,命令可直接读取并处理标准输入流stdin,与tar工具类似。

  • -i
    extract,导出文件。

  • -d
    make-directories,建立新目录存放导出文件。

  • -m
    保持文件的更新时间。

  • -v
    verbose,显示命令详情。

参考资料