【发布时间】:2010-03-12 15:25:50
【问题描述】:
我正在尝试反编译源包,因为我想查看 preist en prerm 文件。这些文件通常在 debian 文件夹中,但是当我提取源包时,我没有找到任何 debian 文件夹。有没有简单的命令或者其他方式获取debian文件夹?
提前致谢
【问题讨论】:
-
您的意思是“preinst 和 prerm”文件吗?
标签: debian structure packagemaker
我正在尝试反编译源包,因为我想查看 preist en prerm 文件。这些文件通常在 debian 文件夹中,但是当我提取源包时,我没有找到任何 debian 文件夹。有没有简单的命令或者其他方式获取debian文件夹?
提前致谢
【问题讨论】:
标签: debian structure packagemaker
如果你想从包 foo 的源中获取它:
apt-get source foo
这将获得 .orig.tar.gz、带有控制信息的 .dsc 和带有 Debian 更改(如果有的话)的 .diff.gz 以及添加到构建源的 debian/ 目录。它也会有(pre|post)(inst|rm) 文件。
从.deb 二进制文件中,您可以按照其他答案使用ar 和tar。
【讨论】:
尝试ar x [dpkg-package](其中 dpkg-package 是二进制包),它会生成一个包含postinst(和其他)文件的control.tar.gz。
【讨论】:
其实很简单:debian 子目录只存在于 dpkg 的源代码中,即它是 dpkg 使用的元目录,dpkg 会查看它并构建最终的 .deb,其中只有一个文本文件“debian-binary”、“data.tar.gz”和“control.tar.gz”。
要获得初始的“debian”目录,您必须查看上游源代码控制,或询问软件包的维护者。
【讨论】:
试试
apt-get source packagename
这将下载文件并解压缩它,以及 debian 特定的文件。
【讨论】: