Este proyecto es una forma de mencionar un entorno de desarrollo del núcleo de Linux de manera rápida y fácil, sin usar herramientas como QEMU o construir una cadena de herramientas y compilación cruzada. Esto se hace construyendo un núcleo del paquete suministrado por Debian y usándolo con la distribución de Debian.
El proyecto también incluye a Khack , una utilidad para sacar algunas conjeturas del proceso de piratería en el núcleo, así como servir como guía para los recién llegados, como una alternativa para leer mucho material en línea e intentar aprender con prueba y error.
vagrant plugin install vagrant-vbguest ). Ejecute vagrant up donde clonó el repositorio (donde está Vagrantfile ) para crear una nueva VM brillante con todo lo que necesita.
Esto llevará un tiempo.
Una vez hecho, ejecute vagrant ssh para ingresar a la máquina y desde allí, dependiendo de su nivel de familiaridad con el desarrollo del núcleo, tampoco:
khack para obtener una explicación de lo que puede hacer aquí (WIP),khack --help para una lista de scripts útiles,O simplemente ignore a Khack por completo y haga lo suyo.
Dentro del directorio de VM Home, habrá:
linux-source : fuentes de kernel de Linux listas para ser compiladas con la configuración mínima de linux-config .khack : La utilidad Khack.module : código de andamio para un módulo de kernel.linux-config : configuraciones de núcleo prefabricadas.system-config : archivos de configuración para diferentes programas relacionados con el sistema, generalmente no hay necesidad de tocar esto.boot-backup : una copia de seguridad de /boot , por si acaso. khack , module y linux-config están configurados para compartirse con el sistema operativo host, por lo que puede usar su editor favorito para editar archivos en ellos.
Para editar la fuente del núcleo, vea a continuación. Todo lo demás se puede hacer de la manera tradicional (compilar e instalar el núcleo, etc.) o usar khack para conveniencia.
Revelamos la fuente a través de SMB/CIFS, para evitar problemas con la construcción del núcleo en un directorio compartido Virtualbox. Montar:
Vía terminal:
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
Via Nautilus:
smb://vagrant:vagrant@localhost:10139/kernel-source/
Vía terminal:
sudo mount -t smbfs '//vagrant:vagrant@localhost:10139/kernel-source' WHERE_TO_MOUNT
Vía buscador:
Use Connect to Server (CMD+K) con la URL smb://vagrant:vagrant@localhost:10139/ .
Khack está destinado a simplificar la piratería en el núcleo y enseñar a los recién llegados que los comandos realmente funcionan, ya que demuestran que realmente funcionan, ahorrando a los alumnos de la frustración de tratar de ajustar los encantamientos de un tutorial en línea escrito hace diez años.
Su fuente está disponible en khack y puede usarse simplemente khack dentro de la VM, ya que está en conjunto en el lugar correcto (ver setup_vm.sh ).
Por ejemplo:
khack kernel make construirá el núcleo en ~linux-source .khack kernel install instalará el kernel construido para que se ejecute cuando se reinicie la VM.khack kernel running informará si el último kernel compilado se está ejecutando.Experimentar y divertirse,
Equipo de kerneltlv