暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

1.2 Kali Linux 和 Debian 的关系

NetHunterPark 2018-10-28
2079


# 第一章 关于 KALI LINUX


## 1.2 Kali 和 Debian 的关系


Kali Linux 发行版是基于 Debian Testing 构建的。因此在 Kali Linux 中的大多数可用包都是直接来自于 Debian 的软件仓库。



虽然 Kali Linux 十分依赖 Debian ,但同时在某些方面它也是一个完全独立的分支。比如,我们有自己的底层架构,也保留了做任何修改的自由度等。


### 1.2.1 软件包的合入过程


在 Debian 一侧,贡献者们每天都在不断的更新软件包,并且将她们上传到 Debian Unstable (不稳定)分支。在那儿,一旦重要的 bug 被解决了之后,这些更新包就会被合并到 Debian Testing (测试)分支。合并的过程也会保证整个软件包依赖的完整。这个过程的目标就是让 Testing 分支始终在一个可用甚至可发布状态。


Debian Testing 的目标和 Kali Linux 的要求十分吻合,于是,我们用它来作为整个系统的母版。在分支添加 Kali 专有软件包需要两个步骤:


首先,我们获取 Debian Testing ,把我们自己的 Kali 软件包(在我们的kali-dev-only软件仓库中)强行合入进去,去构建我们的 Kali-dev 软件仓库。然后,我们就要面对软件仓库时不时的崩溃,比如,我们的 Kali专有软件包如果不用新的库重新编译的话,可能并不可用。另外一些情况就是这些已经合入的软件包可能也会有更新,不管是又变成了可安装状态,还是解决了依赖于另一个软件更新所造成的可安装性问题。不管怎样,kali-dev 分支并不是一个面向用户的版本。


### 1.2.2 管理与 Dbian 的差异


从架构设计上来讲,我们尽最大努力使分支软件包的数量最小化。然而,为了实现一些 Kali 独有的特性,有些修改是必须的。为了减少这些修改的影响,我们尽力将修改向上游提交。一般的方式是直接集成这些特性,或者是添加钩子(关联),这种方式可以直接开启相应的特性而不用去修改上游的软件包。


Kali Package Tracker (Kali 软件包追踪系统)帮助我们保持对 Debian 不同的跟踪。任何时候,我们都可以看到哪个软件包有了新分支,是否和 Debian 保持同步,或者是否要进行升级。我们所有的软件包都通过 Git Repositories 来维护, Debian 的分支和 Kali 分支在这里是并行的。多亏了这种方式,我们更新一个软件包只需要简单的两步:更新 Debian 分支,然后合并到 Kali 分支。


现在 Kali 中的分支软件包数量已经非常小了,但是额外软件包的数字却很高:据 2017 年 4 月的统计,大概接近有 400个。大部分的软件都是遵循 Debian Free Software Guidelines (Debian 自由软件指南)的,而我们的终极目标就是尽可能的在 Debian 下维护这些软件包。这就是为什么我们尽力去遵守 Debian Policy ,使用在 Debian 中被证明的优秀打包经验。不过,还是有些无法创建合适打包方式的例外。由于时间越来越紧迫,只有少数的软件包被推送到了 Debian 。



为了能够让大家边学习边实践,达到一起读书的目的,公众号将尽量保持一周两篇的速度更新,欢迎大家持续关注。


另外,部分图片来自网络,如有侵权请联系作者删除。



破阵子

醉里挑灯看剑

梦回吹角连营

八百里分麾下炙

五十弦翻塞外声











猎客

·

公元




公众号:NetHunterPark

关注移动安全及渗透测试

文章转载自NetHunterPark,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论