kernel hacking
1.0.0
该项目是一种快速,轻松地启动Linux内核开发环境的方法,而无需使用QEMU或构建工具链和交叉编译的工具。这是通过从Debian提供的包装中构建内核来完成的,并将其与Debian发行版一起使用。
该项目还包括Khack ,这是一种用于从内核上黑客入侵的过程中进行一些猜测的实用程序,以及作为新移民的指南,作为在线阅读大量材料并试图通过试用和错误学习的替代方法。
vagrant plugin install vagrant-vbguest )。在克隆仓库( Vagrantfile所在的位置)的位置vagrant up以创建一个闪亮的新VM,并使用所需的一切。
这将需要一段时间。
完成后,根据您对内核开发的熟悉程度,运行流vagrant ssh进入机器,这要么:
khack以解释您在这里可以做什么(WIP),khack --help ,或者只是完全忽略Khack,做自己的事情。
在VM主目录中,将有:
linux-source :Linux内核源,可以用linux-config的最小配置来编译。khack :Khack Utility。module :内核模块的脚手架代码。linux-config :预制内核配置。system-config :用于不同系统相关程序的配置文件,通常无需触摸此文件。boot-backup : /boot的备份,以防万一。设置了khack , module和linux-config与主机操作系统共享,因此您可以使用自己喜欢的编辑器在其中编辑文件。
要编辑内核源,请参见下文。为了方便起见,可以以传统方式(编译和安装内核等)或使用Khack来完成其他所有操作。
我们通过SMB/CIF揭示源,以避免在VirtualBox共享目录上构建内核的问题。登机:
通过终端:
sudo apt install cifs-utils
sudo mount -t cifs //localhost/kernel-source WHERE_TO_MOUNT -o port=10139,username=vagrant,password=vagrant,uid=$USER,gid=$USER
通过Nautilus:
smb://vagrant:vagrant@localhost:10139/kernel-source/
通过终端:
sudo mount -t smbfs '//vagrant:vagrant@localhost:10139/kernel-source' WHERE_TO_MOUNT
通过Finder:
使用url smb://vagrant:vagrant@localhost:10139/ 。
Khack的目的是简化内核上的黑客攻击,并教授新移民,这些新移民实际上是通过表明他们实际上起作用的工作,从而使学习者摆脱了尝试调整十年前在线教程中的咒语的挫败感。
它的来源可在khack下使用,可以简单地用作VM中的khack ,因为它可以链接到正确的位置(请参见setup_vm.sh )。
例如:
khack kernel make将在~linux-source中构建内核。khack kernel install将安装内置的内核,以便在重新启动VM时运行。khack kernel running将报告是否实际运行最新的编译内核。实验并玩得开心,
Kerneltlv团队