1

我有一个.deb包,我需要以编程方式提取其内容。但是,我无法找到有关该主题的任何资源,例如.deb包格式规范,这将使我更多地了解如何在不进行逆向工程的情况下解决问题。

有任何想法吗?

4

4 回答 4

3

其实很简单。

ar xv <name of deb file>

要从 C 中调用,您可以使用system

system("ar xv <name of deb file>");
于 2010-09-20T09:47:34.447 回答
1

包格式的设计目标之一.deb是使用现有工具和/或库轻松提取。顶层结构确实是一个ar文件,但是在里面,你会发现另一个层次的结构,传统上是一对tar文件。有关更多文档,请参见例如http://en.wikipedia.org/wiki/Deb_(file_format )

ar如果您找不到现有的库,您可能可以使用 GNU源代码来构建您自己的库。我希望有用于 ar / tar / cpio / 你有什么的通用库。

于 2011-09-08T10:12:51.800 回答
1

如果你没有找到这个库(我也没有),并且不能求助于运行系统命令,你总是可以实现你自己的来阅读 ar 档案。ar 文件格式并不十分复杂。

于 2010-09-20T10:00:49.237 回答
0

我刚刚看到libarchive支持这种ar格式,还有很多其他格式。

于 2011-09-08T10:15:02.770 回答