9.2.2. 获取来源
由于 Linux 内核源代码以包的形式提供,因此您可以通过安装 linux-源代码-版本包。 这 apt-cache 搜索 ^linux-source 命令应该列出 Kali 打包的最新内核版本。 请注意,这些包中包含的源代码与 Linus Torvalds 和内核开发人员发布的源代码不完全对应4; 像所有发行版一样,Debian 和 Kali 应用了许多补丁,这些补丁可能(也可能不会)进入 Linux 的上游版本。 这些修改包括从新内核版本向后移植修复/功能/驱动程序、尚未(完全)合并到上游 Linux 树中的新功能,有时甚至是 Debian 或 Kali 特定更改。
本节的其余部分重点介绍 4.9 版本的 Linux 内核,但这些示例当然可以适用于您想要的特定内核版本。
在这个例子中,我们假设 linux-源码-4.9 已安装二进制包。 请注意,我们安装了一个包含上游源的二进制包,但不检索名为的 Kali 源包 Linux的.
# apt 安装 linux-source-4.9 正在阅读包列表...完成构建依赖树
阅读国家信息......完成
将安装以下附加软件包: bc libreadline7
建议安装的软件包:
libncurses-开发 | ncurses-dev libqt4-dev
将安装以下新软件包: bc libreadline7 linux-source-4.9
0 个升级,3 个新安装,0 个删除,0 个未升级。 需要获得 95.4 MB 的档案。
在此操作之后,将使用额外磁盘空间的95.8 MB。
你要继续吗? [是/否] y
[...]
# ls /usr/源文件
linux-config-4.9 linux-patch-4.9-rt.patch.xz linux-source-4.9.tar.xz
# apt 安装 linux-source-4.9 正在阅读包列表...完成构建依赖树
阅读国家信息......完成
将安装以下附加软件包: bc libreadline7
建议安装的软件包:
libncurses-开发 | ncurses-dev libqt4-dev
将安装以下新软件包: bc libreadline7 linux-source-4.9
0 个升级,3 个新安装,0 个删除,0 个未升级。 需要获得 95.4 MB 的档案。
在此操作之后,将使用额外磁盘空间的95.8 MB。
你要继续吗? [是/否] y
[...]
# ls /usr/源文件
linux-config-4.9 linux-patch-4.9-rt.patch.xz linux-source-4.9.tar.xz
请注意,该包包含 /usr/src/linux-source-4.9.tar.xz,内核源代码的压缩存档。 您必须将这些文件解压缩到一个新目录中(不是直接在 /usr/源/,
4https://kernel.org/
因为编译 Linux 内核不需要特殊权限)。 反而, 〜/内核/ 比较合适。
$ mkdir ~/内核; cd ~/内核
$ tar -xaf /usr/src/linux-source-4.9.tar.xz
$ mkdir ~/内核; cd ~/内核
$ tar -xaf /usr/src/linux-source-4.9.tar.xz