当前位置: 首页>>技术教程>>正文


是否可以查看 debian 包的内容?

问题描述

我想查看 debian 包的内容,特别是如果该包正确清理了它安装的任何内容。

我还想看看它是如何安装软件的,它创建了什么目录,符号链接等。

最佳方法

采用

dpkg -x somefile.deb somefolder

somefile.deb 包含的文件解压到文件夹 somefolder

采用

dpkg -e somefile.deb somefolder

somefile.deb 的控制数据(包脚本、元数据…)提取到文件夹 somefolder 中。

某些档案管理器让您可以像浏览任何其他档案文件一样浏览 Debian 软件包。

次佳方法

您可以在终端中使用 dpkg 来查看哪些文件在已安装的包中。

dpkg -L <package>

您还可以使用它来找出特定文件来自哪个包。

dpkg -S <file>

列出 .deb-file 的内容。

dpkg -c <file.deb>

为了评估采取了哪些 pre/post-install 操作,需要提取并手动查看这些文件。

dpkg -e <file.deb> [folder] 

有关更多选项,请参阅 dpkg 的 man-page。

第三种方法

dpkg -c package.deb ,它列出了包安装的文件,还有 dpkg --info package.deb ,它显示了一般信息,包括存在哪些配置脚本(这些脚本在安装过程中的不同点运行)。

此外,.deb 包很难不清理已安装的文件,因为这些文件是自动跟踪的,除了从脚本创建的文件。 Debian 有 piuparts 服务,它会自动测试 Debian 档案库中的软件包。

第四种方法

是的。 Debian 软件包实际上只是一个存档文件夹。因此,您应该能够使用默认的存档管理器打开它(右键单击 -> 使用存档管理器打开)。或者,您还可以在任何地方提取。我希望你能从中学到很多东西。

第五种方法

是的,它只是一个普通的 AR 存档,就像 tar.gz 文件中的 tar 部分(在这种情况下是 Tape ARchive)

此存档的内容是三个文件:

  • debian-binary:deb 格式版本号。这是当前 Debian 版本的 “2.0”。

  • control.tar.gz:所有包meta-information。它告诉 dpkg 在安装软件包时要配置什么。 data.tar、data.tar.gz、data.tar.bz2、data.tar.lzma 或 data.tar.xz:实际的可安装文件。

  • debian-binary 文件必须是存档中的第一个条目,否则它不会被识别为 Debian 软件包。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/12007.html,未经允许,请勿转载。