Aquí están los pasos. Este procedimiento se basa en nixCraft Es Cómo: Compilar kernel de Linux 2.6 --pero modernizado considerablemente.
Descargue y extraiga el código fuente del kernel que desea construir.
Puede obtener el código fuente del kernel ascendente en kernel.org . Aquí se utilizará la versión 3.16.1 (el último kernel estable a partir de este escrito). Por lo tanto, es posible que deba modificar estos comandos si está utilizando una versión diferente.
El código fuente del núcleo se proporciona actualmente en. alquitrán . xz archives, así que haga clic en el enlace "tar.xz" según la versión que desee:
Después de cd
acceder al directorio donde descargó el archivo, puede extraerlo con tar
:
tar xf linux-3.16.1.tar.xz
Instale las herramientas de compilación necesarias y realice la configuración del kernel.
Para llegar de Ubuntu cadena de herramientas ( gcc
, make
, etc.) instalar la build-essential metapaquete:
sudo apt-get update
sudo apt-get install build-essential
Dos maneras bastante fáciles de usar para configurar lo que sucede en su núcleo son proporcionados por los make
objetivos xconfig
y menuconfig
.
xconfig
ejecuta una utilidad de configuración gráfica, mientras menuconfig
está basada en texto (es decir, su interfaz aparece completamente dentro de su terminal). Cada uno requiere algún software adicional no proporcionado por build-essential .
Para configurar gráficamente , instale libqt4-dev y pkg-config y ejecutemake xconfig
:
sudo apt-get install libqt4-dev pkg-config
make xconfig
Para configurar en el terminal , instalelibncurses5-dev
(gracias a Hannu por esta información) y ejecutemake menuconfig
:
sudo apt-get install libncurses5-dev
make menuconfig
Construye el kernel configurado.
Primero ejecute esto para compilar el núcleo y crear vmlinuz
:
make
vmlinuz
es "el núcleo". Específicamente, es la imagen del kernel la que GRUB o cualquier otro cargador de arranque que utilices descomprimirá y cargará en la memoria .
Luego construya los módulos del núcleo cargables :
make modules
Instale su kernel recién construido.
Suponiendo que esos make
comandos se completaron con éxito, es hora de instalar el nuevo núcleo. Primero instale los módulos:
sudo make modules_install
Luego instale el núcleo en sí:
sudo make install
Eso coloca vmlinuz-3.16.1
(una copia de vmlinuz
), config-3.16.1
(un archivo de texto que almacena los parámetros de configuración del núcleo) y System.map-3.16.1
(la tabla de búsqueda de símbolos del núcleo ) en /boot
. Para más detalles, vea esta publicación comp.os.linux.misc de Hadron y man installkernel
.
Configuración final, para que el núcleo se pueda iniciar y arrancar el sistema:
Esta sección se basa en parte en la información en Kernel / Compile .
Con el núcleo ahora donde debe estar, necesita:
Genera tus initramfs conmkinitramfs
:
cd /boot
sudo mkinitramfs -ko initrd.img-3.16.1 3.16.1
Cuando actualice la configuración del gestor de arranque GRUB2, que ha sido el predeterminado en Ubuntu desde la 9.10, debería detectar automáticamente el nuevo núcleo y agregar una opción para iniciarlo.
sudo update-grub
Prueba tu núcleo.
Ahora puede reiniciar para probar su nuevo núcleo. Es posible que deba mantener presionada Shifto presionar Escdurante el inicio para ver el menú de inicio de GRUB donde puede seleccionar entre los diferentes núcleos que están instalados.
Para hacer que su kernel (u otro) sea el predeterminado, consulte ¿Cómo cambio el orden de arranque de GRUB?