8.4. 包参考:深入挖掘 Debian 包系统
现在是时候深入研究 Debian 和 Kali 的软件包系统了。 在这一点上,我们将超越工具和语法,更多地关注打包系统的具体细节。 这个幕后视图将帮助您了解 APT 在其基础上是如何工作的,并将让您深入了解如何认真简化和定制您的 Kali 系统。 您可能不必记住本节中的所有材料,但随着您对 Kali Linux 系统的掌握程度不断提高,演练和参考材料将对您有所帮助。
到目前为止,您已经通过各种旨在与之交互的工具与 APT 的包数据进行了交互。 接下来,我们将深入挖掘,看看包的内部,看看内部 元信息 (或有关其他信息的信息)由包管理工具使用。
文件档案和元信息的这种组合在一个文件的结构中是直接可见的。
deb文件。 文件,这只是一个 ar 存档,连接三个文件:
$ 艺术 /var/cache/apt/archives/apt_1.4~beta1_amd64.deb
debian-二进制 control.tar.gz data.tar.xz
$ 艺术 /var/cache/apt/archives/apt_1.4~beta1_amd64.deb
debian-二进制 control.tar.gz data.tar.xz
这个 debian-二进制 文件包含描述存档格式的单个版本号:
$ ar p /var/cache/apt/archives/apt_1.4~beta1_amd64.deb debian-binary
2.0
$ ar p /var/cache/apt/archives/apt_1.4~beta1_amd64.deb debian-binary
2.0
这个 控制.tar.gz 存档包含元信息:
$ ar p /var/cache/apt/archives/apt_1.4~beta1_amd64.deb control.tar.gz | 焦油-tzf-
./
./配置文件
。/控制
./md5sums
./postinst
./postrm
./预加载
./普雷姆
./shlibs
./触发器
$ ar p /var/cache/apt/archives/apt_1.4~beta1_amd64.deb control.tar.gz | 焦油-tzf-
./
./配置文件
。/控制
./md5sums
./postinst
./postrm
./预加载
./普雷姆
./shlibs
./触发器
最后,该 数据.tar.xz 存档(压缩格式可能会有所不同)包含要安装在文件系统上的实际文件:
$ ar p /var/cache/apt/archives/apt_1.4~beta1_amd64.deb data.tar.xz | 焦油 -tJf -
./
。/等等/
./etc/易于/
./etc/apt/apt.conf.d/
./etc/apt/apt.conf.d/01autoremove
./etc/apt/preferences.d/
./etc/apt/sources.list.d/
./etc/apt/trusted.gpg.d/
./etc/cron.daily/
./etc/cron.daily/apt-compat
./etc/内核/
./etc/kernel/postinst.d/
./etc/kernel/postinst.d/apt-auto-removal
./etc/logrotate.d/
./etc/logrotate.d/apt
./库/
./lib/systemd/ [...]
$ ar p /var/cache/apt/archives/apt_1.4~beta1_amd64.deb data.tar.xz | 焦油 -tJf -
./
。/等等/
./etc/易于/
./etc/apt/apt.conf.d/
./etc/apt/apt.conf.d/01autoremove
./etc/apt/preferences.d/
./etc/apt/sources.list.d/
./etc/apt/trusted.gpg.d/
./etc/cron.daily/
./etc/cron.daily/apt-compat
./etc/内核/
./etc/kernel/postinst.d/
./etc/kernel/postinst.d/apt-auto-removal
./etc/logrotate.d/
./etc/logrotate.d/apt
./库/
./lib/systemd/ [...]
请注意,在此示例中,您正在查看 deb文件。 包在 APT 的存档缓存中,并且您的存档可能包含与显示的版本号不同的文件。
在本节中,我们将介绍每个包中包含的元信息,并向您展示如何利用它。